Quartle / Dimes / NIckels / Pennies中的Java返回更改

时间:2014-09-05 05:06:00

标签: java math

我需要帮助我正在尝试制作的小项目。它没有正确返回你需要的硬币数量,输出应该是这样的:

购买金额= 23.06 现金投标= 30.00 所需硬币数量: 94美分= 3季度 1角钱 1镍 4便士

    ConsoleIO keyboard = new ConsoleIO( );
    double cashPaid, purchaseAmount, temp;
    int change; 
    int quarters, dimes, nickels, pennies;
    System.out.println("------------START--------------");
    System.out.print("Please enter total amount: $");
    purchaseAmount = keyboard.readDouble();

    System.out.print("Enter amount paid: $");
    cashPaid = keyboard.readDouble();

    temp = (cashPaid - purchaseAmount);
    System.out.println("CHANGE: $" + temp + "\n");
    double coins = temp;

    quarters = (int)(temp/25);
    coins %= 25;
    dimes = (int)(coins/10);
    coins %= 10;
    nickels = (int)(coins/5);
    coins %= 5;
    pennies = (int)(coins/1);
    coins %= 1;

    System.out.println("Quarters = " + quarters + "\nDimes = " + dimes + "\nNickels = " + nickels + "\nPennies = " + pennies);

    System.out.println("-------------END---------------");

1 个答案:

答案 0 :(得分:0)

您的temp是美元。它应该是美分。

有关更多想法,请参阅此kata。 http://codekata.com/kata/kata01-supermarket-pricing/