1
我對Java很新。我收到一個錯誤。我知道是什麼導致它是double(changeLeft)
,但我需要得到我的結果在一倍,所以它顯示適當的變化,但我不知道如何做到這一點。自動售貨機更換Java
我不允許使用便士。最小的變化是宿舍。
我相信我所要做的是施放?但我真的很失落。
任何幫助/建議將不勝感激!
import java.util.Scanner;
public class Cash {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int itemCost = 0;
int moneyInserted = 0;
int changeLeft = 0;
int hundred = 0;
int fifty = 0;
int twenty = 0;
int ten = 0;
int five = 0;
int toonie = 0;
int loonie = 0;
double quarter = 0;
System.out.println("Item cost?");
itemCost = scanner.nextInt();
System.out.println("Amount given?");
moneyInserted = scanner.nextInt();
changeLeft = moneyInserted - itemCost;
hundred = changeLeft/100;
changeLeft = changeLeft % 100;
fifty = changeLeft/50;
changeLeft = changeLeft % 50;
twenty = changeLeft/20;
changeLeft = changeLeft % 20;
ten = changeLeft/10;
changeLeft = changeLeft % 10;
five = changeLeft/5;
changeLeft = changeLeft % 5;
toonie = changeLeft/2;
changeLeft = changeLeft % 2;
loonie = changeLeft/1;
changeLeft = changeLeft % 1;
quarter = (double)changeLeft;
System.out.println("Change Due($): \n" +
hundred + " Hundred\n" + fifty + " Fifty\n" + twenty +
" Twenty\n" + ten + " Ten\n" + five + " Five\n" + toonie +
" Toonie\n" + loonie + " Loonie\n" +
quarter + " Quarter");
}
}
什麼是'x/1'? x/1'的剩餘部分是什麼? (提示:數學)。 –
如果你在用錢工作,那麼它應該是雙倍的。如果你從這個數字中得到數字,那麼他們可以是整數。 NB整數除法與雙精度或浮點除法有很大不同。 – ManoDestra
如果您使用金錢工作,您可以接受雙打作爲用戶輸入,但雙打必須立即**轉換爲整數或長分。浮點算術對計算金錢不夠精確。 –