Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Write a Java class that implements the concept of Coins, assuming the following

ID: 3697480 • Letter: W

Question

Write a Java class that implements the concept of Coins, assuming the following attributes (variables): number of quarters, number of dimes, number of nickels, and number of pennies. Include two constructors (non-argument constructor that assigns 1 to each coin, and another constructor that takes necessary arguments to create an object), needed getter and setter methods, method toString (to print coins objects in a meaningful way), and method equals (to compare two coins objects based on number of coins). Also include the following methods:

A method to return the amount of money in dollars notation (e.g., $0.41 if you have one coin of each)

Write a test program (client class) to test all methods in the class.

Explanation / Answer

################ Coins.java ###########################

public class Coins {
  
   private int pennies;
   private int nickels;
   private int dimes;
   private int quarters;
  
   public Coins() {
       pennies = 1;
       nickels = 1;
       dimes = 1;
       quarters = 1;
   }

   /**
   * @param pennies
   * @param nickels
   * @param dimes
   * @param quarters
   */
   public Coins(int pennies, int nickels, int dimes, int quarters) {
       this.pennies = pennies;
       this.nickels = nickels;
       this.dimes = dimes;
       this.quarters = quarters;
   }

   /**
   * @return the pennies
   */
   public int getPennies() {
       return pennies;
   }

   /**
   * @return the nickels
   */
   public int getNickels() {
       return nickels;
   }

   /**
   * @return the dimes
   */
   public int getDimes() {
       return dimes;
   }

   /**
   * @return the quarters
   */
   public int getQuarters() {
       return quarters;
   }

   /**
   * @param pennies the pennies to set
   */
   public void setPennies(int pennies) {
       this.pennies = pennies;
   }

   /**
   * @param nickels the nickels to set
   */
   public void setNickels(int nickels) {
       this.nickels = nickels;
   }

   /**
   * @param dimes the dimes to set
   */
   public void setDimes(int dimes) {
       this.dimes = dimes;
   }

   /**
   * @param quarters the quarters to set
   */
   public void setQuarters(int quarters) {
       this.quarters = quarters;
   }
  
   @Override
   public String toString() {
       return "Pennies: "+pennies+", Nickels: "+nickels+", Dimes: "+dimes+", Quarters: "+quarters;
   }
  
   @Override
   public boolean equals(Object obj) {
       Coins coin = (Coins)obj;
      
       if(this.pennies == coin.pennies &&
           this.nickels == coin.nickels &&
           this.dimes == coin.dimes &&
           this.quarters == coin.quarters)
           return true;
       else
           return false;
   }
  
   public double getDollar(){
       double total = 0;
       total = (pennies + 5*nickels + 10*dimes + 25*quarters)/100.0;
       return total;
   }

}

################### Test Class ##########################

public class TestCoin {
  
   public static void main(String[] args) {
      
       Coins c1 = new Coins();
      
       System.out.println(c1.toString());
       System.out.println("Dollar: $"+c1.getDollar());
      
       System.out.println();
      
       Coins c2 = new Coins(5, 2, 4, 2);
       System.out.println(c2.toString());
       System.out.println("Dollar: $"+c2.getDollar());
   }

}

/*

Sample run:

Pennies: 1, Nickels: 1, Dimes: 1, Quarters: 1
Dollar: $0.41

Pennies: 5, Nickels: 2, Dimes: 4, Quarters: 2
Dollar: $1.05

*/

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote