Example Problem Set: Difference between revisions
Mr. MacKenty (talk | contribs) |
Mr. MacKenty (talk | contribs) |
||
Line 17: | Line 17: | ||
== Unit Tests == | == Unit Tests == | ||
'''User Input:''' Name: Bill | * '''User Input:''' Name: Bill | ||
'''Expected output:''' Hello Bill | * '''Expected output:''' Hello Bill | ||
'''User Input:''' Name: TJ | * '''User Input:''' Name: TJ | ||
'''Expected output:''' An administrator! Hello TJ | * '''Expected output:''' An administrator! Hello TJ | ||
'''User Input:''' Name: 123 | * '''User Input:''' Name: 123 | ||
'''Expected output:''' Hello 123 | * '''Expected output:''' Hello 123 | ||
== Take This Further == | == Take This Further == |
Revision as of 07:44, 8 June 2016
This is a problem set. Some of these are easy, others are far more difficult. The purpose of these problems sets are:
- to build your skill applying computational thinking to a problem
- to assess your knowledge and skills of different programming practices
What is this problem set trying to do[edit]
This is example problem set. In this example we are learning about lists, conditionals, and processing user input.
The Problem[edit]
At a prestigious international school, we have only 5 administrators, Michael, Carol, Jen, Constance and TJ. Your program should ask the user to type in their name. If their name matches one of our administrators, your program must output a special greeting. If the user input is any other name (does not match the list of administrators)
Unit Tests[edit]
- User Input: Name: Bill
- Expected output: Hello Bill
- User Input: Name: TJ
- Expected output: An administrator! Hello TJ
- User Input: Name: 123
- Expected output: Hello 123
Take This Further[edit]
- add in a condition that players only have a certain number of turns to win
- add in a difficulty level; easy, medium and expert. If a player has easy, they have 8 tries, medium, they have only 4 tries, and expert, only 2 tries!!
How you will be assessed[edit]
Your solution will be graded using the following axis:
Scope
- To what extent does your code implement the features required by our specification?
- Did the student try?
- Evidence of effort? Even if the student fucked up, if they tried, they get assessed.
Correctness
- Did code meet specifications?
- Did code meet unit tests?
- If it passes all unit tests, it earns a 5
- Check50: output is suggestive not determinative.
Design
- Is this code efficient?
- Are you you eliminating repetition?
- Are you using functions when you should?
- Code that is short is often a proxy for good design
Style
- Is your code formatted?
- Variables well named?
- Adhere to clean code
References[edit]
A possible solution[edit]
Click the expand link to see one possible solution, but NOT before you have tried and failed!
not yet!