Due: Thursday 10/07 10:00am
Submission name: test02.rkt
Write Possible Test Questions
With your TableBuddy™ write three potential test questions.
- The first two should be multiple choice questions with 4 options.
- The third one should be a function to program.
- This should be similar to the programming work you have had so far. Include all the information needed to write the function (formulas, etc).
Put both questions, and the answers in a racket file. You are working with your TableBuddy™, but if you dont finish in class you can both submit different files from home. You can put multiple lines together in a single comment using #| .... |#
. Use this format:
#lang racket
#|
MC Question:
Skill:
Options:
Answer
|#
#|
MC Question:
Options:
Skill:
Answer
|#
#|
Programming question:
Skill:
Description
Possible solution:
|#
CODE GOES HERE
Here is a filled in Example:
#|
MC Question:
What is the air speed of an unladen swallow?
Skill: 9001
Options:
A) 2 mph
B) 20 mph
C) 200 mph
D) African or European?
Answer: D
|#
#|
MC Question:
Who you gonna call?
Skill: 9001
Options:
A) Transformers
B) Ghostbusters
C) Thundercats
D) Teenage Mutant Ninja Turtles
Answer: B
|#
#|
Programming question:
Skill: 2,3
Write a function that takes the radius of a
circle and returns it's area.
area = pi * r^2
Possible solution:
|#
(define areaC
(lambda (radius)
(* pi radius radius)))
(areaC 10)
Test Skills
Skill | Minimal Competency | Developing Competency | Competency | Mastery |
---|---|---|---|---|
2. Using Functions | Can explain the concept of a function. | Uses a single function to produce a desired outcome. | Combines multiple functions to produce a desired outcome. | Appropriately uses functions that return and do not return values, combining them to produce a desired outcome. |
3. Writing functions/procedures. | Can write the contract for a function. | Can write simple functions given a contract. | Can write complex functions given a contract and can write contracts for functions given a specified task. | Can write contracts for complex functions, implement those functions and create effective test cases for them. |
4. Understanding Algorithms | Can follow an algorithm to produce a desired outcome. | Can break down a simple problem into basic steps that will result in a desired outcome. | Can break down a problem into basic steps and implement those steps in code. | Can analyze the differences between 2 or more algorithms that produce the same desired outcome. |
5. Working with Boolean Values | Understands the purpose of boolean values. | Demonstrates the appropriate use of comparison operators. | Demonstrates the appropriate use of comparison and boolean operators. | Writes functions that take in boolean values and/or return boolean values. |
6. Using Conditional Statements | Can trace the result of a single conditional statement. | Can write conditional statements with one or two results. | Can write nested conditional statements. | Can use at least two different kinds of conditional statements, and understand the benefits of each. |
9. Data Structures | Understands the difference between single values and data structures. | Can describe how one data structure stores data. | Can use a data structure to store multiple values in a program. | Can use language provided features to effectively create and access data in a data structure. |
10. Recursion | Can describe what a recursive function is. | Can accurately trace a recursive function. | Can write and trace a recursive function. | Can develop a recursive solution to a problem and correctly implement it. |
22. Using Variables | Recognizes the difference between variables and literals | Demonstrates ability to understand code which uses variables | Correctly uses variables in programming | Correctly uses the appropriate types of variables for different programming algorithms |
23. How Functions Operate | Knows the difference between calling and defining a function | Can correctly define and call functions | Understands, in general terms, the difference between what happens in the computer when you define or when you call a function. | Can correctly explain what happens in the computer when a function is called and when a function is defined, using the correct vocabulary (ex, parameters/arguments). |