MATLAB 判断素数function [t]=sushu(n)k=floor(sqrt(n));for i=2:kif mod(n,i)==0t=0;elset=1;endend运行时显示Error in ==> sushu at 2k=floor(sqrt(n));有什么错吗?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/17 00:32:35
MATLAB 判断素数function [t]=sushu(n)k=floor(sqrt(n));for i=2:kif mod(n,i)==0t=0;elset=1;endend运行时显示Error in ==> sushu at 2k=floor(sqrt(n));有什么错吗?

MATLAB 判断素数function [t]=sushu(n)k=floor(sqrt(n));for i=2:kif mod(n,i)==0t=0;elset=1;endend运行时显示Error in ==> sushu at 2k=floor(sqrt(n));有什么错吗?
MATLAB 判断素数
function [t]=sushu(n)
k=floor(sqrt(n));
for i=2:k
if mod(n,i)==0
t=0;
else
t=1;
end
end
运行时显示
Error in ==> sushu at 2
k=floor(sqrt(n));
有什么错吗?

MATLAB 判断素数function [t]=sushu(n)k=floor(sqrt(n));for i=2:kif mod(n,i)==0t=0;elset=1;endend运行时显示Error in ==> sushu at 2k=floor(sqrt(n));有什么错吗?
知道你意思了,这是函数文件,需要在command运行窗口输入,但文件名一定是函数名才可以,本文件名为:sushu.m
.command窗口输入过程如下:
n=7
sushu(n)
函数程序可运行,但结果错误,修改如下(有解释部分):
function [t]=sushu(n)
k=floor(sqrt(n));
for i=2:k
if mod(n,i)==0
t=0;
break;%表示当被i整出时,不是素数,终止循环
else
t=1;
end
end