matlab的一道求素数的题目function a=sushu(m)k=sqrt(m);for i=2:kif rem(m,i)==0break;endendif(i>k) a=1;else a=0;end 老是运行不出来,帮忙看看怎么回事?

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/24 03:43:59
matlab的一道求素数的题目function a=sushu(m)k=sqrt(m);for i=2:kif rem(m,i)==0break;endendif(i>k) a=1;else a=0;end 老是运行不出来,帮忙看看怎么回事?
xRN@ihz~KVBEM I@@H$@ _! GM޼9>#Bҽrf_ wÍWK5*%pzA?+D2Z6 )Q2wxHi'5QPzK"20~ӺxТ<oQLgvJs0h6F۩†|QW٤ۭ6D"9& ,o|WC`tR|=H*ڍx>_2nkMP闪L :5~-q:>I@;k 5/RFc ױa3ŤQ8#@dƆ ϫg\znHJ {w"vAVD

matlab的一道求素数的题目function a=sushu(m)k=sqrt(m);for i=2:kif rem(m,i)==0break;endendif(i>k) a=1;else a=0;end 老是运行不出来,帮忙看看怎么回事?
matlab的一道求素数的题目
function a=sushu(m)
k=sqrt(m);
for i=2:k
if rem(m,i)==0
break;
end
end
if(i>k)
a=1;
else
a=0;
end
老是运行不出来,帮忙看看怎么回事?

matlab的一道求素数的题目function a=sushu(m)k=sqrt(m);for i=2:kif rem(m,i)==0break;endendif(i>k) a=1;else a=0;end 老是运行不出来,帮忙看看怎么回事?
matlab里面的循环变量和c不一样
在matlab里for i=2:k,结束循环以后,i的最终值是不大于k的整数
而c,c++,里面for (i=2; ik)总是false
可以考虑用一个flag
function a=sushu(m)
k=sqrt(m);
flag=0;
for i=2:k
if rem(m,i)==0
flag=1;
break;
end
end
if(flag=0)
a=1;
else
a=0;
end