0
所以我試圖在我的程序中包含一個美元測試,檢查用戶輸入的值是否可能是美元量。我在麻煩它在while循環中減去.01。這個想法是,如果他們輸入一個值爲3位小數的值(如2.345),它會捕獲並輸入一個有效數字。有沒有人有任何建議如何解決這個問題?Eclipse,我不斷減去一個while循環的值,它不會給我正確的答案
Scanner input = new Scanner(System.in);
double dollar = 0;
System.out.print("Please enter a dollar amount: ");
dollar = input.nextDouble();
while (dollar != 0){
dollar -= .01;
if (dollar < 0)
{System.out.print("Please enter a valid dollar amount: ");
dollar = input.nextDouble();
}
System.out.println(dollar);
}
}
我明白你的意思,但如果用戶輸入50.991呢?我試圖找出的部分是如果他輸入了許多小數位。 – spartan17
把條件和交叉檢查十進制數字放在另一個檢查 – Raju
你可以使用'toString()。length()',這個鏈接也可以幫助 - > http://stackoverflow.com/questions/6264576/number-of-小數位數-IN-A-雙 – Raju