On this page:
10 Registration
11 Dates
12 Questions
13 Required Software
14 Required Reading
14.1 Beginning Student Language
14.2 Working with Images
15 The Placement Tasks
16 Programming Task 1
16.1 Required Reading
16.2 Task
16.3 Grading Standards
16.4 Submission
17 Programming Task 2
17.1 Required Reading
17.2 Task
17.3 Grading Standards
17.4 Submission
18 Math Task 1
18.1 Submission

Placement Test

10 Registration

The placement test started on July 3. But, you can register late by emailing d.patterson AT northeastern.edu.

11 Dates

The placement test will run from July 3 – August 11. It will not require 1.5 months of work. But, it will require studying portions of a textbook and working through several exercises by yourself. The 1.5 months duration is to give you flexibility. You will be able to complete the test at any point while the test is out.

12 Questions

Feel free to email me at d.patterson AT northeastern.edu if you have any questions.

13 Required Software

The placement test, and the rest of Accelerated 1, takes place within Racket (a collection of languages and an IDE), which you can download from the Racket website:

https://www.racket-lang.org

14 Required Reading

If you want to start reading right away, you should read the following parts of How to Design Programs (2nd ed):

14.1 Beginning Student Language

Racket is a large and complicated language. For the purpose of teaching, it includes smaller sub-languages that are easier to understand. Over the course of the semester, we will build up to more complicated subsets of it. For now, the Beginning Student Language (BSL) omits most of Racket’s advanced features and thus makes it easier to learn.

To use BSL in Racket, go to the Language menu, select Choose Language, and pick BSL from the Teaching Languages section.

14.2 Working with Images

To do the programming tasks in the placement test, make sure you add the following line at the top of your program:

(require 2htdp/image)

Please do not use Racket features like embedded images, embedded comment boxes, etc. While these are all nice, Gradescope does not understand any of them, making it much more complicated for us to read your code. This is really Gradescope’s fault, not Racket’s, but we’re stuck with these tools.

15 The Placement Tasks

This placement test has three parts:

You must complete and submit all three parts.

16 Programming Task 1

16.1 Required Reading

Read the Prologue of How to Design Programs (2nd ed). You won’t need all the content of this part to do the work below (the first portion, through the “Arithmetic and Arithmetic” section, should suffice), but from the next assignment onward you will be defining functions and using conditionals (covered in the rest of the part), so you may find it useful read ahead.

If you want to learn more about Racket’s support for images, see the Quick Introduction.

If you are new to programming: people learn programming by actually writing programs and running them. As you read, type in the code in the document, see how it works, change it a little and see what happens. Actually trying the code in the assigned reading will be essential for you to get comfortable with the material. Do not passively “read” the material: you will get far less out of it than you imagine!

16.2 Task

Create flags of the following countries:

You should create these flag images using the Racket image primitives (for rectangles, stars, etc.), not by finding the images and pasting them in. You are, however, welcome to use a Web search to figure out what the flags look like.

You may pick the dimensions of your flag, but please make it large enough for us to see (with a width of at least 100), but preferably not so large that we need to scroll a lot to see them all.

For maybe the only time this summer or during the semester, we will not judge you on absolute correctness (e.g., checking whether you got the precise ratios of the different parts right). We’re going to visually eyeball it for general adherence. Of course, feel free to geek out on the vexillological details as much as you wish!

16.3 Grading Standards

This assignment will not be graded. You’ll know when you’ve gotten the flags right; you don’t need us to tell you. However, we still want you to turn in your work so that you have gone through the full cycle of submission. That way things will go more smoothly from the next part, which is graded.

Therefore, please do turn in your work but do not expect any feedback on this assignment.

16.4 Submission

Please write a series of expressions in a single file such that, when the file is Run, the flags appear in the interactions area. If you do use define to give them names, make sure to use these names so that this criterion is met.

Submit the assignment on Gradescope (select Log in with School Credentials, find Northeastern, and use your @northeastern.edu email address. Do not log in with Google, or any other Gradescope account you may have.)

17 Programming Task 2

17.1 Required Reading

Read Chapter 8 and Chapter 9 (up to 9.1) of HtDP 2/e.

If you find something unfamiliar (e.g., the material references if), note that we skipped reading Part 1 so you may need to peek in there to look it up.

17.2 Task

Define the following functions. Even if you think they correspond to a function that already exists, write it yourself. We’re testing your ability to program, not to read documentation!

Some of the problems refer to “words”. You may assume every string represents a word irrespective of its content, i.e., you do not need to check the content unless explicitly asked to do so by the assignment.

17.3 Grading Standards

This assignment is graded. When you submit the problem, you will receive some basic instant feedback, e.g., if there is typo in the name of a function. After the deadline, you’ll receive more detailed feedback.

17.4 Submission

Create a single file that contains the five functions named above (it can contain any other helper definitions you like as well). The functions must be named exactly as above and must take parameters exactly as above.

Submit the assignment on Gradescope (select Log in with School Credentials, find Northeastern, and use your @northeastern.edu email address. Do not log in with Google, or any other Gradescope account you may have.)

18 Math Task 1

Please answer the following math questions.

Don’t just write the answer: also show us why us your solution is correct (e.g., show your steps).

18.1 Submission

Please submit a PDF of your solution, including your work, on Gradescope (select Log in with School Credentials, find Northeastern, and use your @northeastern.edu email address. Do not log in with Google, or any other Gradescope account you may have.)