Java program that simulates the battle between a cat & mice

Assignment Help JAVA Programming
Reference no: EM13940726

Write a Java program that simulates the battle between a cat and mice.

Cat Kills 1 mouse a day, and does not reproduce.

Mice have a chance to reproduce as long as required conditions are met. Reproduction only happens when mice are over 1, and 1 of each sex is present.

Simulation continues as long as mice population is greater than 1 and less than 10.

Simulation should generate following output depending on if the population of mice is greater than or equal to 10, or no mice left:

Mice RULE, Cats Drool Mice Population: ## (integer value)

Or

Cats RULE, Mice Drool Cat Weight (in mice): ##.## (double value, 2 decimal places)

Sample session (requires no user input):

Mice RULE, Cats Drool Mice Population: 11
Press any key to continue . . .

Cats RULE, Mice Drool Cat Weight (in mice): 2.03
Press any key to continue . . .

Mice RULE, Cats Drool Mice Population: 10
Press any key to continue . . .

Cats RULE, Mice Drool Cat Weight (in mice): 2.05
Press any key to continue . . .

The program should consist of following files:

1. LastFirstWeek5CatMouse.java (driver program)

Driver main method should be as shown below. Add appropriate code in it to generate simulation output.

import java.util.ArrayList;

public class LastFirstWeek5CatMouse
{
public static void main(String [] args)
{

cat sylvester = new cat();
ArrayList<mouse> mice = new ArrayList<mouse>();
mice.add(new mouse());
mice.add(new mouse());
mice.add(new mouse());
mice.get(0).setSex(true);
mice.get(1).setSex(false);
mice.get(2).setSex(false);

while (mice.size() >1 && mice.size() < 10)
{
for (mouse m:mice)
m.grow();
sylvester.grow();
mouse.mate(mice);
sylvester.eat(mice);
}
}
}

2. Mammal.java

Instance variables: name (string), age (integer), weight (double), isMale (Boolean)

class mammal constructor : (default constructor) Set age to 1.

grow method : Increases age of mammal by 1.

Accessor / mutator methods for each instance variable above, set or return values as appropriate for data type specified.

3. Cat.java (extends Mammal class)

eat method: Receives mouse arraylist as argument.

Randomly removes a mouse from the population 70% of the time and increases cat weight by the chosen mouse weight. Only increase weight if mouse is removed/eaten.

grow method: Set the cat's age to the current age plus 1. (Use accessor/mutator methods.)

4. Mouse.java (extends Mammal class)

class mouse constructor: (default constructor) Randomly choose sex and assign to isMale as appropriate. Set age to 1. Set weight to 1.

grow method: Increase age of mouse by 1 and weight of mouse by 1% of current weight.

mate method: (static method, receive mouse arraylist as argument) Randomly choose 2 mouse objects from arraylist and if the required conditions are met, proceed with mating. Successful mating conditions are: 1 male and 1 female mouse, both mice older than 1 day. If successful mating happens, randomly create between 0-4 mice and append to arraylist received as argument.

Reference no: EM13940726

Questions Cloud

Framework for the preparation and presentation : The International Accounting Standards Board (IASB) Framework for the preparation and presentation of financial statements and IAS 1 (revised) Presentation of financial statements provide guidance on the presentation of published financial stateme..
Should pretrial diversion be expanded : Briefly describe the alternatives to incarceration available in your state. Identify the goal that each program seeks to accomplish (e.g., rehabilitation, deterrence, restoration, etc.).
Ethical leads to better business performance : Topic: "Discuss the key benefits of business ethics and whether you believe that being ethical leads to better business performance. Provide relevant research and examples to support your thinking."
Balance in the manufacturing overhead account : Teak Outdoor Furniture manufactures wood patio furniture. The company reports the following costs for June 2012:
Java program that simulates the battle between a cat & mice : Mice have a chance to reproduce as long as required conditions are met. Reproduction only happens when mice are over 1, and 1 of each sex is present.
Evaluate the potential impacts of the resurgence of naa : Evaluate the potential impacts of (a) the resurgence of NAA; and (b) the loss of OMRI endorse- ment of ReTain for use in organic production on the US apple market and assess the risks these pose to ReTain's dominance in this market.
Developing a workplace sustainability policy : The CEO and Board of Directors would like to gauge the scope of the work involved in developing a Workplace Sustainability Policy. You have been requested to review the summary of information provided from the Environmental and Sustainability Cons..
Implement the scan, c_scan, and look disk scheduling algo : The code must have a separate method for each scheduling algorithm and they all have to be called from the main() method.
What is meant by the lex talionis : What is meant by the lex talionis? Explain what is meant by the following statement: The lex talionis is proscriptive (establishing the boundaries) rather than prescriptive (defining the appropriate punishment). What is your reaction to this idea..

Reviews

Write a Review

JAVA Programming Questions & Answers

  Function that finds the smallest item in an arraybag

Write me a function that finds the smallest item in an ArrayBag (by reference) and returns true if the arrayBag is not empty and false otherwise.

  Update your website to include a simple web form

Update your website to include a simple web form as discussed in your design document. Use JavaScript to validate the form contents and display the results of that validation to the user in a popup window

  Features of any programming language is recursion

One of the most useful features of any programming language is recursion and control structures, decisions and loops. Recursion and loop structures allow programs to repeat actions without duplicating code.

  Design a single class that expresses the commonality

Design a single class that expresses the commonality of these concepts.

  Design a program to help a videorental store

Design classes (class video, class customer, etc) based on your analysis above, using LINKED LISTS for the database elements read into the main memory.

  Calculate your age in the year 2060.

Declare and initialize an integer variable named currentYear. Initialize this variable with the value of the currentYear. Use four digits for year. Use four digits for the year.

  Write a for loop that computes the sum of all integers

Write a for loop that computes the sum of all integers from 1 to 10

  Java socket hello i need to this assignment done in net

hello i need to this assignment done in net beans . and i want comment in code .also screen shots of running program

  Prompts the user to input a decimal number

Write a program that prompts the user to input a decimal number and ouputs the number rounded to the nearest integer.

  Convert the while loop in the following code segment

Convert the while loop in the following code segment to a do-while loop

  This is a simulation of rolling dice actual results

this is a simulation of rolling dice. actual results approach theory only when the sample size is large. so we will

  Write a java program that uses a search tree of strings

Write a Java program that uses a search tree of strings to sort text lines in alphabetic order. You may choose how you de?ne alphabetic order as long as there is some sense in the de?nition. You may also choose what kind of tree you use.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd