public class Interest {
public static void main(String[] args) {
int n; // number of years
double rate; // annual rate
for (int r = 5; r<=10; r++ ) {
System.out.println("\nInterest rate is " + r + "%");
System.out.println("**********************");
System.out.println("Year\tAmount on deposit");
for (n=1; n<=10; n++) {
int p = 1000; // original amount
rate = r / 100;
double a = p * (Math.pow(1 + rate, n)); // amount on deposit at the end of year
System.out.printf("\n%d\t%.2f", n, a);
}
}
}
}
它以年为单位正确显示图表。但年末存款金额(a)保持不变(1000)。看起来像这样;
Interest rate is 5%
**********************
Year Amount on deposit
1 1000.00
2 1000.00
3 1000.00
4 1000.00
5 1000.00
6 1000.00
7 1000.00
8 1000.00
9 1000.00
10 1000.00
直到费率达到10%。
答案 0 :(得分:13)
您正在执行integer division。
尝试:rate = r/100.0;
答案 1 :(得分:1)
注释 - 在java中划分两个整数时,结果是另一个整数(向下舍入)。尝试在你的师中使用双倍。