全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
8541 5
2013-10-29
悬赏 40 个论坛币 未解决
最近在做一个pricing model的project。遇到了几个问题想请教一下。
在做matlab中的for loop时, 比如(这里算一个贝努力实验,成功可能性为0.6,100次试验中,1到10次成功的可能性的加和)
for i=1:10;
        nCr=factorial(100)/(factorial(i).*factorial(100-i));
        term1=nCr.*0.6.^i.*0.4.^(100-i);
        cal1=cal1+term1;
        i=i+1;
end
cal1
这个loop里最后这个cal1总是以矩阵的方式输出,而不是以一个累加之和的方式输出。请问这样应该怎么改正?


然后我做了这样的一个loop,所求的和之前的问题一样。
for i=1:10;
        nCr=factorial(100)/(factorial(i).*factorial(100-i));
        term1=nCr.*0.6.^i.*0.4.^(100-i);
        i=i+1;
end
cal1=sum(term1)
这里的cal1是一个加和,但是正确么?在这个loop里,每次循环中 term1是否被存储在了一个矩阵中?或者说我循环完之后,得到的是term1在i=1:10下的10个值么?

多谢各位了!



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-10-29 19:43:35
1: 在所有代码最前面写一个 cal1=0  试试

2:  不正确,要用数组。

基础知识很欠缺,建议先补充基础知识。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-10-29 23:25:17
Xaero 发表于 2013-10-29 19:43
1: 在所有代码最前面写一个 cal1=0  试试

2:  不正确,要用数组。
第一个代码前面我是有写cal1=0的。可是我试着最后输出cal1,显示的还是数组啊....
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-1 21:39:13
首先,最重要的一点,不要写i=i+1。。。否则你只计算了出现1,3,5,7,9,的概率。。。这会导致你的计算是错的。。

其次,我跑了一下你的代码,得到的是一个数。。可不可以问一下你matlab 的版本?

最后,跑循环之前要定义cal1,否则会报错。。。我的就报错了。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-2 21:12:51
danielruc91 发表于 2013-11-1 21:39
首先,最重要的一点,不要写i=i+1。。。否则你只计算了出现1,3,5,7,9,的概率。。。这会导致你的计算是错的。 ...
只计算了出现1,3,5,7,9,的概率

这个说法是错误的。 你试试:
for i=1:10;
  disp(i);
  i=1+1;
end
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-3 09:22:00
Xaero 发表于 2013-11-2 21:12
只计算了出现1,3,5,7,9,的概率

这个说法是错误的。 你试试:
好吧,我试了一下,确实可以。。但是不写也行的。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群