作业帮 > 综合 > 作业

matlab循环语句for加什么才能算出循环次数?

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/08/08 16:36:49
matlab循环语句for加什么才能算出循环次数?
for语句已编好:
for m=101:2:200 %步长为2
k=fix(sqrt(m)); %fix取整,sqrt开方
for i=2:k+1
if rem(m,i)==0;%rem求余数
break;%提前结束,跳出matlab循环语句
end
end
if i>=k+1
disp(int2str(m))%整数转换为字符型数组
end
end
matlab循环语句for加什么才能算出循环次数?
if rem(m,i)==0;%rem求余数
m%在break之前输出m
i%同理输出i
break;%提前结束,跳出matlab循环语句
end
再问: 运行后得到很乱的结果,我的意思是统计本次循环的次数,望兄台再给点建议。
再答: 你的本次循环指的是外面的m循环,还是里面的i循环 for m=101:2:200 %步长为2 k=fix(sqrt(m)); %fix取整,sqrt开方 for i=2:k+1 if rem(m,i)==0;%rem求余数 break;%提前结束,跳出matlab循环语句 end end if i>=k+1 disp(['m=' int2str(m) '是素数'])%整数转换为字符型数组 disp(['总共循环了' int2str(i) '次']) else disp(['m=' int2str(m) '不是素数']) disp(['总共循环了' int2str(i) '次']) end end
再问: 亲,如何统计整个循环的所有次数,你这样运行的是m值每个数所循环的次数,望解答下,谢谢
再答: %亲,能加分吗 a=0; for m=101:2:200 %步长为2 k=fix(sqrt(m)); %fix取整,sqrt开方 for i=2:k+1 if rem(m,i)==0;%rem求余数 break;%提前结束,跳出matlab循环语句 end end if i>=k+1 disp(['m=' int2str(m) '是素数'])%整数转换为字符型数组 disp(['总共循环了' int2str(i) '次']) else disp(['m=' int2str(m) '不是素数']) disp(['总共循环了' int2str(i) '次']) end a=m*i+a; end disp('------------------------------------') disp(['总共循环了' int2str(a) '次'])
再问: 运行你上面的程序,总共循环的次数怎么那么大呀?
再答: a=i+a;%这个不应该乘m,我搞错了
再问: 亲,这个总共循环413次,这个运行的答案是正确的不?望检验下,最后问一个问题:int2str(m),这个是什么意思?你扣扣是多少?
再答: 这程序不是你编的?你原来的代码中不是也用到这个函数了,晕,int2str就是把整数转为字符 结果没问题,274397279 亲,能加分吗,打字打得好累啊