I am creating a system for giving back change. When I run the program I get: (Lets say i gave $100)
You have given 100.0 dollars.
Your change is 14.670000000000002 dollars.
You will recieve:
0.6700000000000017 dollars
0.1700000000000017 quarters
0.0700000000000017 dimes
0.020000000000001697 nickels
1.6965595595053173E-15 pennies
code
import java.util.Scanner;
public class RunGivingChange {
public static void main(String[] args) {
// TODO Auto-generated method stub
double given;
double cost = 85.33;
double change;
int dollars;
int quarters;
int dimes;
int nickels;
int pennies;
Scanner input = new Scanner(System.in);
System.out.println("Your total is " + cost + " dollars.");
System.out.println("How much money are you giving?");
given = input.nextDouble();
if (given >= cost)
{
System.out.println("You have given " + given + " dollars.");
change = given - cost;
System.out.println("Your change is " + change + " dollars.");
System.out.println("You will recieve:");
//dollars
change = change % 1;
System.out.println(change + " dollars");
//quarters
change = change % 0.25;
System.out.println(change + " quarters");
//dimes
change = change % 0.10;
System.out.println(change + " dimes");
//nickels
change = change % 0.05;
System.out.println(change + " nickels");
//pennies
change = change % 0.01;
System.out.println(change + " pennies");
}
else if (given < cost)
{
System.out.println("Not enough money.");
}
else
{
System.out.println("Error.");
}
}
}