如果我的标题听起来很混乱,我很抱歉,但我是编程的极端初学者。我的家庭作业是显示一个人每天工资加倍的天数(第1天:1.00美元,第2天:2.00美元,第3天:4.00美元等等)。我必须显示他们每天的工资以及他们所有日子的总工资。
我无法想象如何获得所有工作日所赚的所有工资的总和。帮助
for ( int daysWorked = 1; daysWorked <= numDaysWorked; daysWorked++) {
System.out.println("Pay for day #" + daysWorked + ": " + formatter.format(amount));
amount = daysWorked * 2;
totalPay = ?? ;
}
System.out.println("\nTOTAL PAY FOR " + numDaysWorked + " DAYS: " + formatter.format(totalPay));
答案 0 :(得分:2)
totalPay = ?? ;
应该是
totalPay = totalPay + amount; // adding each day pay to totalPay
或以这样的简短形式书写:
totalPay += amount; // adding each day pay to totalPay
你的逻辑是错误的,因为第一天的薪水也会加倍:
amount = daysWorked * 2;
你不想要的。所以你可以在for循环中添加一个if来纠正它:
for ( int daysWorked = 1; daysWorked <= numDaysWorked; daysWorked++) {
System.out.println("Pay for day #" + daysWorked + ": " + formatter.format(amount));
if(daysWorked == 1) {
amount = daysWorked
} else {
amount = daysWorked * 2;
}
totalPay += amount; // adding each day pay to totalPay
}
答案 1 :(得分:1)
double amount = 1; // make sure it initially equals 1
for (int daysWorked = 1; daysWorked <= numDaysWorked; daysWorked++) {
System.out.println("Pay for day #" + daysWorked + ": " + formatter.format(amount));
totalPay += amount; // add the amount value each time to the totalPay variable
amount *= 2; // it doubles so just double it every loop
}
System.out.println("\nTOTAL PAY FOR " + numDaysWorked + " DAYS: " + formatter.format(totalPay));