java - 货币单位换算

标签 java units-of-measurement

我有美元可以工作,但现在我不知道如何正确显示 25 美分、10 美分、5 美分和 10 分。从技术上讲,它们会出现,但我的教授希望 1.35 美元显示为 1 美元 1 25 美分 1 毛钱。但是,我的显示为 1 美元 5 夸特 13 角硬币 27 镍币 135 便士。这是我的代码:

import java.util.Scanner;

public class ComputeChange {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("Enter an amount in double, for example 11.56: " );
        double number = input.nextDouble();
        System.out.println("Your amount " + number + " consists of ");
        int remainingamount = (int)(number*100);
        int Quarters = remainingamount/25;
        int Dimes = remainingamount/10;
        int Nickels = remainingamount/5;
        int Pennies = remainingamount;

        if (number == 1) {
            System.out.print("1 dollar ");
        }
        else if (number > 1) {
            System.out.print((int)number + " dollars ");
        }
        if (number == 0) {
            System.out.println("");
        }
        System.out.print(Quarters + " Quarters " + Dimes + " Dimes " + Nickels + " Nickels " + Pennies + " Pennies");
    }
}

最佳答案

对于您计算的每种不同的硬币,您需要将其从剩余金额中删除。如(未经测试):

    int Dollars = (int)number;
    int remainingamount = (int)((number-Dollars)*100);
    int Quarters = remainingamount/25;
    remainingamount -= Quaters * 25;
    int Dimes = remainingamount/10;
    remainingamount -= Dimes * 10
    int Nickels = remainingamount/5;
    remainingamount -= Nickels * 5
    int Pennies = remainingamount;

关于java - 货币单位换算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28624396/

相关文章:

Java 一行变量声明?

java - 如何从 ResultSet 中检索 char 数组?

java - 存储和管理测量单位

java - Android Studio中的assembleDebug错误

java - 在 Linux 中设置 System.getenv

java - 更高效的解决方案 : Project Euler #2: Even Fibonacci Numbers

F# 计量单位......有时间的例子吗?

unicode - 带有 Unicode 字符符号的 F# 度量单位,确切的限制是什么?

python - 如何计算多标签分类中的 F1 度量?

html - HTML 应该使用什么单位?