Difference between revisions of "CSC111 Homework 3 2014"
(→Problem #2: Test for invalid inputs) |
(→Problem #3: Mother Theresa and Father Christmas) |
||
Line 47: | Line 47: | ||
=Problem #3: Mother Theresa and Father Christmas= | =Problem #3: Mother Theresa and Father Christmas= | ||
<br /> | <br /> | ||
− | This program will be called '''hw3c.py''. | + | This program will be called '''hw3c.py'''. |
It is a continuation of the exercises in Lab 3 where the program had to recognize the words '''mother''' or '''father''' in the user's input. | It is a continuation of the exercises in Lab 3 where the program had to recognize the words '''mother''' or '''father''' in the user's input. |
Revision as of 23:30, 12 February 2014
--D. Thiebaut (talk) 21:23, 12 February 2014 (EST)
This assignment asks you to add new levels of testing with if-statements in the Rock-Paper-Scissors game. This assignment must be performed in pair-programming mode. You need a different partner than the partner you had for Homework 2. Only one set of programs needs to be submitted for the two partners.
Contents
Problem #1: Adding a mug to the game
This program will be called hw3a.py.
This program will allow the user to play a more sophisticated game where there is another option: a mug!
The new rules are the same as for the Rock-Paper-Scissors game, but with these additions:
- Scissors fall in mug, and mug wins
- Paper blocks mug, and paper wins
- Rock breaks mug, and rock wins
Requirements
- Your program should recognize lowercase as well as uppercase inputs from the user.
- You can assume that the user will always enter the correct letters, and they can be upper- or lowercase.
- Your program should let the user play 3 rounds with the computer.
- Your program should keep track of who's is winning and print the winner of the 3 rounds at the end.
Problem #2: Test for invalid inputs
Your program will be called hw3b.py.
No mugs in this program!
Your assignment is to take the Rock-Paper-Scissors game from Lab 3 and to make sure it implements the following features (some part of Lab 3's program, some new):
- Your program should let the user play 3 rounds with the computer.
- Your program should keep track of who's is winning and print the winner of the 3 rounds at the end.
- Your program should accept upper or lower case inputs from the user. So r and R should be recognized as meaning Rock. Similarly for the other letters.
- If the user does not enter one of the valid inputs ('R', 'S', or 'P') the program will ask the user to enter a new character. The user has only one chance to correct the mistake. If the character entered the second time by the user is still not one of 'R', 'S', or 'P', the computer will automatically pick a random good character for the user, i.e. one of 'R', 'S', or 'P'.
Problem #3: Mother Theresa and Father Christmas
This program will be called hw3c.py.
It is a continuation of the exercises in Lab 3 where the program had to recognize the words mother or father in the user's input.
Your program must work similarly to the way the program of Lab 3 works: if the user types a sentence where the words mother, father, sister, or brother appear, then the program outputs a response indicating that it detected a family issue:
--Tell me more about your family!
If the user's input does not contain any of these keywords, then the program outputs some generic sentence of your choice. For example:
--Very interesting!
We now add a twist: if the user enters the words Mother Theresa or Father Christmas, however, we will consider that these are not references to the user's family, and the program will output the same generic answer and not mention family.
It's more challenging that it looks!
Make sure you test your program well. All types of inputs will be fed to your program to test it!
Submission
Always make sure your program runs before submitting it!!!
Make sure your program has a header at the top with
- the name of the program
- your two names
- your two two-letter Id
- a brief description of the program
Submit your programs to this link: cs.smith.edu/~thiebaut/111b/submit3.php. The deadline is Thursday night 2/20/14, at midnight.