Flags Supplement

The world is full of countries, each with its own unique identifier, in the form of a beautiful flag. Your job is to create the flags of the following countries by composing shapes onto a scene.

Example: Japan.

        (circle 35 "solid" "red")
	    100 50
	    (rectangle 200 100 "solid" "white"))

Note: The black bounding box is shown only to delimit the image from the rest of the page. It is em not being generated by the code above!

You can use either place-image or overlay to position your images. Pick whichever is easier. They each have their strengths and weaknesses.


We are not looking for an exact match. We're going to grade it by eyeballing. Therefore, we aren't specifying exact dimensions or ratios to follow (though you are welcome to geek out by checking out the precise ratios and colors and so on, and matching them). The goals of this assignments are:

  1. to get you on a schedule of doing supplemental homework
  2. to learn that you can very easily create images, and do fun things with surprisingly little
An explicit un-goal is to create something that would pass muster with the United Nations. They probably have enough flags in stock already.


Make sure you're in the Beginning Student language. To change it, go to the Language menu and select Choose Language... .

Image Teachpack

In order to use the functions place-image, rotate, and other goodies, please use the 2htdp/image.rkt Teachpack:

  1. You will want to disable the cs017 Teachpack; therefore, remove it from your list of Teachpacks (e.g., Language menu, Clear All Teachpacks).
  2. Go to the Language menu, select Add Teachpack..., and choose this Teachpack from the middle column.
You will likely find the documentation useful.

How to turn it in:

Create a single Racket file, flags.rkt that, when run, displays all the flags in order. Turn it in using

cs019_supp_handin flags
Note that you are using a different command than used for CSCI 0170, because the homeworks are being graded by different people.