The instruction and Skeleton Code are located in the file. This is a really big project that I don't know how to do but also, don't have a lot of money. So to keep it cheap I am only asking you to do problem 12. The Helper function are not correct I will fix them later. Just please use the helper functions anyway.
CS 0007 Project 1pdf.pdf CS 0007 Project 1 Coding Mini-Games from Popular Daytime TV Game Shows Important Information Project Release Date and Time: February 10, 2020, at 6:00 AM EST Project Due Date and Time: March 1, 2020, at 11:59 PM EST Project Submission Location: GradeScope Demonstration Deadline: March 6, 2020, at 5:00 PM EST Semi-Anonymous Feedback Deadline: March 1, 2020, at 11:59 PM EST Possible Points: 100 Background Daytime TV game shows used to be a staple of television in the United States, paired with daytime soap operas. Currently, only two game shows are still airing on daytime network TV, Let’s Make a Deal followed by The Price is Right, which are the subjects of this project. Each of these game shows operates by providing some type of simple game, where a contestant is chosen, and then the contestant must make some type of decision, which will affect what type of prize they can receive. These decisions may also be followed by random chance, such as deciding whether or not to roll a dice, or which tile out of 10 to overturn. You can view some of these games by following these links for Let’s Make a Deal: https://www.youtube.com/user/LetsMakeADealCBS, and The Price is Right: https://www.youtube.com/user/thepriceisright. https://www.youtube.com/user/LetsMakeADealCBS https://www.youtube.com/user/thepriceisright Important Information Scanner As we have alluded to Scanner several times in class, you’ll be asked to implement one for a player to play your implemented mini-games. As a reminder, in order to correctly declare and initialize a Scanner that takes in input from the console, you would execute the following line of code: Scanner name = new Scanner(System.in); When you are done using the Scanner, you should run this line of code to cleanup your own mess: name.close(); Please consult the API for calling methods that will be required for your function. The specific one you will be using is next(), and it is strongly recommended to take in only Strings from your initialized Scanner and convert them to ints and doubles when necessary, to prevent any issues of cross-type input. The recommended design for your functions is provided in the skeleton code. Please consult Project 0’s description for help regarding the correct calling syntax for functions. Java API Similar to the previous project, you will be tasked with becoming well-versed with the usage of the Java API. The following classes and methods will be relevant to this project: Classes: String Math Random Scanner Methods: Integer.parseInt(String) Double.parseDouble(String) By going to https://docs.oracle.com/en/java/javase/12/docs/api/index.html, you can easily search for the classes in the search bar, to get a description of what these classes do, and the methods you can use. Please consult Project 0’s description for additional help regarding using the Java API. Code Design In the skeleton code, we have specifically denoted two types of functions. The first type is labeled “HELPER”, which are functions that have been designed to assist the implementation of the remaining functions, and “PROBLEM” which denote actual graded components of the project. HELPER functions are required to be implemented and used in your functions, but they will not be explicitly tested. PROBLEM functions have descriptions that need to be followed in order for GradeScope to work. Please consult the descriptions in the skeleton code and the checklist in the next section before beginning and submitting your implementation. In this particular project, the skeleton code that we have provided has a design in mind. This project expects you to fill out the code needing to alter any of the function headers provided to you (although you may consider adding additional functions if needed). As an example, you may be tempted to declare and initialize a Scanner or a Random variable whenever they are needed, but typically, this is bad coding practice. Instead, getting input from the Scanner will be limited to a HELPER function, that https://docs.oracle.com/en/java/javase/12/docs/api/index.html will handle all the peculiarities of Scanner, and Random will be limited to a couple different HELPER functions. Functions are typically designed as seen in the skeleton code. Each function performs only one action, so that if you need to use that functionality, you do not need to copy and paste code (which would make it more difficult especially if you needed to change something, and have to find every instance to make the proper change). The function with Scanner will be the only function shepherding input around, while the functions with Random will be the only function that deals with random values. Be mindful of the design for the next project. Groups Groups will be randomly assigned, such that 3 people will be in one group. One group will be a group of 4, due to the number of students in the class. It will be you and your group’s responsibility to divide the work fairly. You will be emailed the day the assignment is released what your groups will be, and your groups cannot be changed. The group of 4 will be given further directions regarding additional tasks, such that each group is given a proportional amount of work. Your Task You and your group will be asked to complete a series of function bodies by examining the commented descriptions and coding the implementations of those functions. The functions are ordered in terms of the expected difficulty of implementation, as well as their expected utility (useful functions first, then easy final functions, then hard functions), and it will be up to you to complete and test them. Note in the file that the main method is empty, and you should be using the body of the main method to ensure your code is working as you expect. Note that the descriptions will provide an expectation for how the code should work, but will not tell you in what way the code should be executed. There may be multiple correct implementations, but there may be easier implementations than others. Your first action before implementing the method or function is to consult the Java API to see if any of the classes/methods listed above can assist you. Grading Grading is slightly more complicated than the previous project, and is detailed below: 35% Passing GradeScope tests 35% TA’s manual tests 10% Required Demonstration 10% Semi-Anonymous Group Feedback 10% Code Style, Game Style, and Comments For fairness, the group of 4 will be asked to complete additional tasks to provide a proportional workload for all groups. Those will be factored into the TA’s manual tests. General Rules for GradeScope Please first follow this checklist to ensure your code will accepted by GradeScope 1. Do not call System.exit() under any circumstance. (This will terminate GradeScope without conducting tests.) 2. Do not use Scanner methods in any PROBLEM functions. (There is no console for a user to provide input, (and no user to provide that input) which will hang the execution of GradeScope. Use the corresponding HELPER functions instead.) 3. Similarly, do not use Random methods in any PROBLEM functions. Use the Random parameter instead, and when testing, create a Random variable in the main method to pass in to each applicable function. (Proper GradeScope execution will rely on this format.) 4. Ensure the code can compile on your own machine first. (If your code does not compile, GradeScope will not return with any output.) 5. The line “package src;” without quotations must be the first line in the file. (GradeScope won’t recognize the file correctly without it.) 6. Do not change any method headers. They must remain exactly as they are given to you in the skeleton code file from Courseweb. (GradeScope is configured to test those functions only, and not having them will cause GradeScope to malfunction.) It will be your group’s responsibility to test the code thoroughly. No extensions will be given to those who are having issues with GradeScope, so it is in your group’s interest to submit well in advance. Demonstration All groups will be asked to provide a demonstration, you will be sent an email asking you to make an appointment with a TA or the instructor to demonstrate your code. Demonstrations will be conducted with the code that is submitted on GradeScope, and you will be asked to explain your code in some capacity, for a maximum of 30 minutes. You must conduct the demonstration before the deadline provided above, and failure to conduct the demonstration will cause the maximum deduction of 10%. Please be on time for your demonstration, as others may be waiting. If you arrive late, you may be asked to reschedule your demonstration appointment, but still within the demonstration deadline. Please note that even your group divides the work evenly, it is expected that every student in the group understands every piece of code that is submitted. Every member of the group can be asked questions regarding code they may not have worked on, but will be expected to know how the code works. Semi-Anonymous Group Feedback To ensure that each student is working fairly, students will be asked to submit semi-anonymous group feedback via email to the instructor and grading TA, where each student will describe the dynamics of their group and how much work he or she believed each person contributed to the full project. This is semi-anonymous because the grader and the instructor will know who submitted the feedback, but the group will not know what you submitted. As a result, this grade will be your own, and not common to the entire group. Please provide the following in your email Names of all group members Percentage of work you believe each member performed (including yourself) Explanation of what each person completed 10% of your final project grade will be based on this feedback. However, not submitting one will provide a 0 for this portion, regardless