Description: Write a program to allow a human to play a game of Rock, Paper, Scissors versus the computer. The sample programs (rps1.txt, rps2.txt, and rps3.txt) show 3 runs from my solution to this problem using the default computer player. You must use the given computer player class so the choices are predictable. This is necessary to that we can grade your program. If you were writing the program for yourself you would of course make the computer choices random. But the program you turn in must use the predictable choices generated by the given computer player class.
Given the same human name and computer choices, your program must match this output exactly. Use a diff tool such as the one at this website ( www.quickdiff.com) to ensure your program produces the correct output. Even minor differences in characters will cause you to fail grading tests and lose points.
The program:
This is not an easy program, mostly due to the size of the program. The individual steps are not too difficult, but their are many steps. The program description above gives you a rough idea of how to break the program up into parts.
Have a high level structure and then implement parts of that structure (the individual methods) one at a time, testing to make sure they work before going on. You may have to write some testing code that will not be part of the final program. Do not write the whole program in main and then try and break it up into methods.
Here are some tips on the various parts of the program.
The main method creates the an object of type RandomPlayer. If no values are sent to main a default RandomPlayer is created. If you send an argument to the main method it is assumed it is a single value that can be parsed to an int. (These pages describe how to send an argument to the main method in BlueJ or Eclipse). Pass the RandomPlayer object to the methods that need it. Feel free to share examples of your output for non default players on Piazza.
In the main program declare a Scanner variable that is hooked up to System.in. You must include the line of code
import java.util.Scanner;
at the top of your program.
Pass the Scanner object you create as a parameter to any methods that need it. The main method should not have a lot of statements, instead it shall call other methods. Do not create multiple Scanners. Create one Scanner connected to System.in and pass that object to the methods that need it. If you create more than one Scanner in your program connected to System.in (Scanner sc = new Scanner(System.in);) you will fail, many many of our tests and lose a lot of correctness points.
You must use the provided RandomPlayer.java file. Do not change it.. Do not use Random() (from java.util) directly and do not use Math.random(). Keep RandomPlayer.java in a separate file. Do not turn in RandomPlayer.java.
The nine possible outcomes are
Computer Choice |
Human Choice |
Result |
Rock |
Rock |
Draw |
Rock |
Paper |
Human Wins |
Rock |
Scissors |
Computer Wins |
Paper |
Rock |
Computer Wins |
Paper |
Paper |
Draw |
Paper |
Scissors |
Human Wins |
Scissors |
Rock |
Human Wins |
Scissors |
Paper |
Computer Wins |
Scissors |
Scissors |
Draw |
You must follow the format as shown in the sample output.
10. Declare who the better player was based on the number of wins. This can be part of the results method but will require some conditional execution with if statements.
CS 340 Milestone One Guidelines and Rubric Overview: For this assignment, you will implement the fundamental operations of create, read, update,
Retail Transaction Programming Project Project Requirements: Develop a program to emulate a purchase transaction at a retail store. This
7COM1028 Secure Systems Programming Referral Coursework: Secure
Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip
CS 340 Final Project Guidelines and Rubric Overview The final project will encompass developing a web service using a software stack and impleme