Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

Assignment #3 More OOP - "Is A" Relationship/Inheritance

Grading: For each programming assignment, you are graded by explaining and demoing your code to a TA. You must demo your program BEFORE the next assignment is due, and if you fail to do so, you will automatically lose. Your job is to convince the TA that your program works correctly, i.e. show your TA how to use/break your program Problem Statement (Idea from the MIT OpenCourseWare): You will implement a class called Tool. It should have an int field called strength and a char field called type. You may make them either private or protected. The Tool class should also contain the function void setStrength(int), which sets the strength for the Tool. Create 3 more classes called Rock, Paper, and Scissors, which inherit from Tool. Each of these classes will need a default constructor that sets the strength to 1 and a non-default constructor which will take in an int used to initialize the strength field. The constructor should also initialize the type field using 'r' for Rock, 'p' for Paper, and 's' for Scissors. These classes will also need a public function bool fight(Tool) that compares their strengths in the following way:  Rock's strength is doubled (temporarily) when fighting scissors, but halved (temporarily) when fighting paper. 

In the same way, paper has the advantage against rock, and scissors against paper.  The strength field shouldn't change in the function, which returns true if the original class wins in strength and false otherwise. You may also include any extra auxiliary functions and/or fields in any of these classes.

In addition, you will create a class called RPSGame, which allows a human to play the rock, paper, scissors game against the computer. Your RPSGame must have two Tool for the human and computer tool because you don't know the new tool they'll select with each round. The RPSGame should also have three int fields to keep track of the number of human_wins, computer_wins, and ties.

You can choose the strategy for the computer guesses, but it cannot be based on what the human selected for a tool in the current game!!! Example of a novice and veteran computer AI: http://www.nytimes.com/interactive/science/rock-paper-scissors.html?_r=0
After the human selects the tool for the current game, display the computer's tool, a message describing who won, the current stats for the wins and ties, and then ask the user if he/she wants to play again. Example Play of Game: Welcome to Rock, Paper, Scissors! Do you want to choose different strengths for the tools? (y-yes, n-no) n Choose your tool (r-rock, p-paper, s-scissor, e-exit): r Computer chose scissor.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M91597236
  • Price:- $55

Priced at Now at $55, Verified Solution

Have any Question?


Related Questions in Computer Engineering

Suppose a machine has 16 registers and uses 24 bit memory

Suppose a machine has 16 registers and uses 24 bit memory addresses. The opcodes are 8 bits so that the instruction length is 32 bits. Register instructions can have two or three register operands (4 bits to name each re ...

Couriers such as ups and fedex complete on service and

Couriers such as UPS and FedEx complete on service and price. One way to reduce cost is to keep labor cost low by hiring and laying off workers to meet the demand. This strategy requires managers to hire and train new wo ...

Describe the structure of an inverted index in information

Describe the structure of an inverted index in Information retrieval?

Several basic principles or reasons make psychological

Several basic "principles" or reasons make psychological social engineering effective. These include authority, intimidation, consensus/social proof, scar- city, urgency, familiarity/liking, and trust. Table 2-6 in your ...

A financial analyst examined the possible returns from

A financial analyst examined the possible returns from several financial investments. When the performance of these investments was later examined, it turned out that 25% performed much better than the market average, 25 ...

One of the authors received a credit card bill for 2988 but

One of the authors received a credit card bill for 2,988, but it included a charge of 1,834 that was not valid. Find the values of the absolute and relative errors the absolute value is 1,834 what is the relative errors?

Question suppose users share a 1 280 kbps link also suppose

Question : Suppose users share a 1, 280 kbps link. Also suppose each user requires 64 kbps when transmitting, but each user transmits only 10% of the time. (See the discussion of statistical multiplexing in Section 1.3.) ...

Artificial intelligence techniques assignment -

Artificial Intelligence Techniques Assignment - Combinatorial Optimisation Learning Outcomes Covered 1. Research and analyse the general nature of artificial intelligence and the problems it solves. 2. Apply and evaluate ...

Question 1 using the internet each member of your team

Question: 1. Using the Internet, each member of your team should read at least 3 academically reviewed articles on designing. Summarize the articles in 300 words or more. Provide appropriate reference. 2. Combine each su ...

Question the below table shows the instruction count ic for

Question : The below table shows the instruction count (IC) for programs running on three processors P1, P2, and P3 with the clock rates 1.0 GHz, 2.5 GHZ, and 2.0 GHz respectively. Each program consists of only Load/stor ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As