Program that tracks goldfish stored in fish tanks

Assignment Help JAVA Programming
Reference no: EM132430572

Typical fish bowls are poor environments for most fish, as they lack swimming room, accommodation for a filter, and proper temperature regulation among other things. For a single common goldfish, it is recommended for it to be stored in a tank with a capacity of no less than 30 gallons of water. For every additional common goldfish in the tank, you should use a tank with 12 more gallons of storage capacity. For example, a tank with four common goldfish should have a 66 gallon storage capacity. That's 30 + 12 + 12 + 12 = 66.

If you have the dimensions of the tank, you can compute its gallon capacity using this equation:

gallon-capacity = (length-in-inches * width-in-inches * height-in-inches) / 231

Multiplying the length, width, and height together gives us the cubic volume. When you divide the volume by 231, which is the number of cubic inches in a gallon, that gives you the tank's gallon capacity.

Implement a program that tracks goldfish stored in fish tanks. The FishTank class includes:

  • Six static named constants (study the description above, and the 0-parameter constructor description below, and you'll see six values that should be implemented as static named constants).
  • Instance variables - gallonCapacity, which stores the tank's water capacity in gallons, lengthInInches, which stores the tank's length, widthInInches, which stores the tank's width, heightInInches, which stores the tank's height, and numGoldfish, which holds the tank's current number of goldfish.
  • A static variable - totalGoldfish, which stores the total number of goldfish in all of the tanks combined.
  • Implement a 3-parameter constructor where the tank's length, width, and height are passed in. The number of goldfish should be set to zero.
  • Methods:
  • addGoldfish, which should increase the number of goldfish in the tank and goldfish across all tanks by one.
  • removeGoldfish, which should decrease the number of goldfish in the tank and goldfish across all tanks by one.
  • transferGoldfish, which should accept a FishTank as an argument, remove all of the fish from the calling object, and add them to the passed-in FishTank
  • displayTankInformation, which should print the tank's dimensions, gallon capacity, the number of goldfish it currently holds, and whether or not the tank's capacity is sufficient for the tank's current number of goldfish. For the tank's dimensions and capacity, print the values rounded to the nearest tenths place (see the output).
  • displayTotalFish, a static method which should print the total number of goldfish in all tanks combined.

The following is the fishTankDriver:

public static void main(String[] args)
{
 FishTank ft1, ft2; // fish tanks for testing purposes
 ft1 = new FishTank(36, 18, 12);
 ft2 = new FishTank(48.5, 12.75, 25);
 System.out.println("Tank #1:");
 ft1.displayTankInformation();
 ft1.addGoldfish();
 ft1.addGoldfish();
 ft1.addGoldfish();
 System.out.println("nTank #1:");
 ft1.displayTankInformation();
 System.out.println("nTank #2:");
 ft2.displayTankInformation();
 ft1.transferGoldfish(ft2);
 System.out.println(
   "nTank #1's goldfish have been transferred to Tank #2.");
 System.out.println("nTank #1:");
 ft1.displayTankInformation();
 System.out.println("nTank #2:");
 ft2.displayTankInformation();
 System.out.println("nAdding a goldfish to Tank #1...");
 ft1.addGoldfish();
 System.out.println("nTank #1:");
 ft1.displayTankInformation();
 System.out.println();
 FishTank.displayTotalFish();
} // end main

Output:

Tank #1:

This tank is 36.0 inches long, 18.0 inches wide, and 12.0 inches tall.

It can hold up to 33.7 gallons of water.

Currently, it holds 0 goldfish.

This tank is sufficently large for its current number of goldfish.

Tank #1:

This tank is 36.0 inches long, 18.0 inches wide, and 12.0 inches tall.

It can hold up to 33.7 gallons of water.

Currently, it holds 3 goldfish.

This tank is too small for its current number of goldfish.

Tank #2: This tank is 48.5 inches long, 12.8 inches wide, and 25.0 inches tall.

It can hold up to 66.9 gallons of water.

Currently, it holds 0 goldfish.

This tank is sufficiently large for its current number of goldfish.

Tank #1's goldfish have been transferred to Tank #2.

Tank #1:

This tank is 36.0 inches long, 18.0 inches wide, and 12.0 inches tall.

It can hold up to 33.7 gallons of water.

Currently, it holds 0 goldfish.

This tank is sufficently large for its current number of goldfish.

Tank #2:

This tank is 48.5 inches long, 12.8 inches wide, and 25.0 inches tall.

It can hold up to 66.9 gallons of water.

Currently, it holds 3 goldfish.

This tank is sufficently large for its current number of goldfish.

Adding a goldfish to Tank #1...

Tank #1:

This tank is 36.0 inches long, 18.0 inches wide, and 12.0 inches tall.

It can hold up to 33.7 gallons of water.

Currently, it holds 1 goldfish.

This tank is sufficently large for its current number of goldfish.

There are 4 total goldfish in all the tanks combined.

Reference no: EM132430572

Questions Cloud

Draw the resulting bst : The student shall be able to explain what a BST is and to explain the characteristics of BST's. A BST is created (it is initially empty) where the key associate
Prepare the cash payments budget for the second quarter : Operating income for the first quarter of the coming year is projected to be $320,000. Prepare the cash payments budget for the second quarter
Provide a method definition for the setred method : In the Rgb class, provide a method definition for the setRed method such that setRed can be called as part of a method-call chain.
How do the four components of culture : What does your chosen theorist say about the role of culture in shaping human behavior?How do the four components of culture?
Program that tracks goldfish stored in fish tanks : Implement a program that tracks goldfish stored in fish tanks. The FishTank class includes:
Design an application for the sublime sandwich shop : Design an application for the Sublime Sandwich Shop. The user makes sandwich order choices from list boxes, and the application displays the price.
Form field validation and error messages : You have created a basic form and added interactivity to images using JavaScript. Now it is time to validate information entered into your form fields
Write the pseudocode that uses two arrays : Selection sort is best understood by imagining that you have two lists, Aand B. Initially, we have list A, containing all the unsorted elements
Explain ways addiction impacts physical well being of client : explain how gender might influence the physical, emotional, and spiritual well being of clients with problems.Explain ways addiction impacts physical well being

Reviews

Write a Review

JAVA Programming Questions & Answers

  Computing the weekly hours of employees

Computing the weekly hours of Employees - Suppose the weekly hours for all employees are stored in a two-dimensional array.

  Default constructor for the chatioexception class.

The second constructor takes in a string as a parameter and passes this string into the call to super();

  Calculate the day of the week for the between dates

Calculate the day of the week for the dates between March 1900 and February 2100 as follows: First, you have to calculate the total number of days from 1900/1/1 to the given date (see below for details).

  Develop classes for a billofsales customer item and product

In this assignment question you will develop the functionality of a simple Accounts Receivable system. You will develop classes for a BillofSales, Customer, Item, and Product.

  Explains principles of polymorphism and encapsulation

You have been tasked with prepare a training document that explains the principles of polymorphism, inheritance, and encapsulation.

  Can linear search algorithm be encoded using recursion

Determine the average amount of time people spend waiting for tables and provide examples from the "real world" of unsorted lists, sorted lists, indexed lists, lists that permit duplicate elements, and lists that do not permit duplicate elements

  Having problems running - getting errors

Having problems running, getting errors. Please review the program - error: class, interface, or enum expected

  Java application which creates bank records

Write down a java application which creates 10000 bank records and the allow user ti enter a balance and customer account info. using a an account number.

  Create a java application named distancecalculator

Create a Java application named DistanceCalculator.java to solve the following problem. An application is needed to allow a user to enter two cities and display the distances between them.

  Develop a cinema ticket booking application in java

Develop a Cinema Ticket Booking Application in Java with the following functionality, available from the console: Requests the Customer's name, age and asks if they are a student

  Build the gui layout of the game

Build the Build the GUI layout of the game in java.

  Write a method named rowofstars

Write a method named rowOfStars that takes a single integer parameter n and returns a String with that many stars in it.

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