所以我得到了这个公式来计算将给定利息(i)的任何金额翻倍所需的年数
w x y z
s
a 0.0 1.0 0.5 0.5
b 0.5 0.0 1.0 0.5
c 0.0 0.0 0.0 1.0
这是我的代码:
log(2) / log(1 + (i/100) )
这给了我输出:花费无限长的时间才能使数量翻倍
我做错了什么?
答案 0 :(得分:0)
问题在于100
被假定为整数。您宁可将100表示为100.0
并将其运行。
这是因为假设1.0
,2.3
的值是double而不是float。注意小数点。
因此,请按如下所示重写代码,它将运行:
import java.util.Scanner;
public class JavaApplication37 {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
System.out.println("What's the interest rate?: ");
int i = reader.nextInt();
double t = (Math.log(2))/(Math.log(1+(i/100.0)));
System.out.println("It takes " + t + " years before the amount has doubled");
}
}