Example Problem Set: Difference between revisions
Mr. MacKenty (talk | contribs) |
Mr. MacKenty (talk | contribs) |
||
(7 intermediate revisions by the same user not shown) | |||
Line 13: | Line 13: | ||
== The Problem == | == The Problem == | ||
At a prestigious international school, we have | 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) your program should simply output a simple greeting. | ||
There is no testing for user input. That is, if a user enters a number, an integer, or nothing, your program should not evaluate the input. | |||
== Unit Tests == | |||
* '''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 | |||
== Hacker edition == | |||
In the hacker version: | |||
* Your program should test for valid user input. The user input should be only allow for strings | |||
THIS PART ISNT DONE YET | |||
== How you will be assessed == | == How you will be assessed == | ||
Your solution will be graded using the following axis: | Your solution will be graded using the following axis: | ||
'''Scope''' | '''Scope''' | ||
* To what extent does your code implement the features required by our specification? | |||
* To what extent is there evidence of effort? | |||
'''Correctness''' | '''Correctness''' | ||
* To what extent did your code meet specifications? | |||
* To what extent did your code meet unit tests? | |||
* To what extent is your code free of bugs? | |||
'''Design''' | '''Design''' | ||
* To what extent is your code written well (i.e. clearly, efficiently, elegantly, and/or logically)? | |||
* To what extent is your code eliminating repetition? | |||
* To what extent is your code using functions appropriately? | |||
'''Style''' | '''Style''' | ||
* To what extent is your code readable? | |||
* To what extent is your code commented? | |||
* To what extent are your variables well named? | |||
* To what extent do you adhere to style guide? | |||
== References == | == References == |
Latest revision as of 06:40, 14 March 2018
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) your program should simply output a simple greeting.
There is no testing for user input. That is, if a user enters a number, an integer, or nothing, your program should not evaluate the input.
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
Hacker edition[edit]
In the hacker version:
- Your program should test for valid user input. The user input should be only allow for strings
THIS PART ISNT DONE YET
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?
- To what extent is there evidence of effort?
Correctness
- To what extent did your code meet specifications?
- To what extent did your code meet unit tests?
- To what extent is your code free of bugs?
Design
- To what extent is your code written well (i.e. clearly, efficiently, elegantly, and/or logically)?
- To what extent is your code eliminating repetition?
- To what extent is your code using functions appropriately?
Style
- To what extent is your code readable?
- To what extent is your code commented?
- To what extent are your variables well named?
- To what extent do you adhere to style guide?
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!