我正试图计算在给定数量的期间后投资返回正值的总概率。我已经完成了概率已经有一段时间了,所以我不记得那一切。我做对了吗?我得到相当低的数字。我正在用Java中的这段代码正确计算概率吗?
double totalProbPos = 1;
for (int i = 0; i < maxPeriods; i++) {
totalProbPos *= (probPos/100);
}
totalProbPos = round(totalProbPos);
System.out.println("\nThe probability that your investment will return positive after " + maxPeriods + " periods is: \n " + totalProbPos + "%.");
其中:maxPeriods, probPos
由用户给出。
你确定它不是'* = 1 - probPos/100.0'吗?你也可以跳过循环,只计算double totalProbPos =(1 - probPos/100.0)^ maxPeriods'。 – Blender
你可以链接到公式例如wiki – AlexWien
@Blender我刚刚尝试'Math.pow((1 - probPos/100),maxPeriods);'但现在它更低。我正在用'probPos = 54;'来测试,现在我得到了0.002004%的结果,这是不对的,因为当我运行模拟时,我得到的肯定比很多次要多得多。 –