Introduction to conditionals using Surrealism (Art of Surprise)

This is the third lab for computational art (CS1) using Processing where students write a program that creates an interactive sketch including a surrealist juxtaposition (i.e. the juxtaposition of two things that create a sense of surprise based on their presence in the same frame). The goals for this lab are:

  1. Practice writing an interactive Processing program
  2. Practice using conditionals in your program
  3. Practice testing where the mouse is clicked within an area of your scene
  4. Practice using variables to control appearance
  5. Make an interactive program that visually changes when a mouse is clicked in a certain area
  6. Learn about surrealism
Engagement Excellence

Blexbolex Style Exploring Scaling via Variables

This is the second lab for computational art (CS1) using Processing where students write a program that creates a scene that explores composition to convey story or mood.  The goals for this lab are:

  1. Use a variable to control scale and position of a sketch component
  2. Alter and explore the role of scale in a sketch’s composition
  3. Practice using transforms (translate and scale) in a sketch to control scale of a portion of your design
  4. Apply your knowledge of the 2D coordinate system in order to appropriately scale and translate a portion of your design
  5. Study the composition and coloring used by the artist, Blexbolex
  6. Copying composition and color to practice design 

Expressionist Animal Creation

First lab for computational art (CS1) using Processing where students write a program that creates a presentation of a creature in an expressionist style. The goals for this lab are:

  1. Understand the Processing 2D coordinate systems
  2. Practice creating shapes in Processing
  3. Understand draw order and command ordering
  4. Practicing using Processing
  5. Learn about expressionism
  6. Make a picture of a creature in an expressionist style 
Engagement Excellence

Discounts and currency conversions

In this assignment, CS1 students practice input, output, variables, and types by designing a program that asks the user to enter the number of items purchased and display the amount of the discount. Later, they are asked to simulate the exchange of currencies.

Sudoku!

In this project, students are asked to program the fun and challenging game of Sudoku. The program built must check for a correct solution in the following order: (1) Check each row from row zero to row eight; (2) Check each column from column zero to row eight (3) Check each grid from upper left to lower right, row-ordered.

Snake

In this project, students are asked to create the game Snake, which consists of a rectangular board of 20 rows and 30 columns. The snake and player both live on the board. The snake is represented by the letter "X" on the board, and the player is represented by the letter "i". The object of the game is to avoid being bitten or eaten by the snake. Students use stepwise refinement to build versions of the game.

Battleship!

In this project, students are tasked to build a battleship-playing program that will outsmart their classmates' programs. Using Python, students must use a bottom-up approach, in which they start out by writing the most basic functions and then write higher-level functions that call these basic functions, and so on.

Boom! and Stepwise Refinement

In this project, students are to implement the classic game, minesweeper using ASCII graphics. The game consists of a board with the board divided into a grid. Throughout the grid, mines are scattered. At the beginning of the game, all squares of the grid are covered, obscuring the location of the mines. The object of the game is to uncover all the squares on the board that do not hold mines, avoiding uncovering those squares that do. Squares are uncovered one at a time. Students are asked to use a bottom-up approach to implement the game. For a bottom-up approach, students start out by writing the most basic functions and then write higher-level functions that call these basic functions, and so on.

Lights,Camera, Action!

Databases are implemented everywhere from web servers to automobiles, video games, smartphones, etc. The goal of this project is to implement a simple Python database and query system. The tasks for the program are to display movies, display longest movie, display shortest movie, display movies earlier than specified year, display movies later than specified year, display movies with specified rating, add movie, delete movie, and save database.

Justified!

Formatting of language and print on page is important in writing and publishing. In this project, students are asked to write an XML (eXtensible Markup Language) processor in order to format text, such as right-justified and left-justified paragraphs.

Subscribe to PDF