我有一个带有 for 循环的简单程序,我在其中计算一些打印到屏幕上的值,但只打印第一个值,其余的只是 NaN 值。有没有什么办法解决这一问题?我想这些数字可能有很多小数,因此是 NaN 问题。
程序输出:
0.18410
NaN
NaN
NaN
NaN
等等
这是代码,也许它有帮助:
for i=1:30
t = (100*i)*1.1*0.5;
b = factorial(round(100*i)) / (factorial(round((100*i)-t)) * factorial(round(t)));
% binomial distribution
d = b * 0.5^(t) * 0.5^(100*i-(t));
% cumulative
p = binocdf(1.1 * (100*i) * 0.5,100*i,0.5);
% >= AT LEAST
result = 1-p + d;
disp(result);
end