【发布时间】:2014-04-17 09:16:46
【问题描述】:
我需要在 MAT-LAB 命令窗口中查找给定的输入数字是否为质数。我需要在不使用 matlab 中的内置命令的情况下进行编码。
【问题讨论】:
-
由于您不允许使用内置功能,因此显然是一项任务。我们可以帮助你,但我们不会做你的功课。
我需要在 MAT-LAB 命令窗口中查找给定的输入数字是否为质数。我需要在不使用 matlab 中的内置命令的情况下进行编码。
【问题讨论】:
我在为你的作业编程吗?
function result = isprime2(number)
result=true;
%% check if number is a nonnegative integer
if floor(number)~=number || number<0
result=false;
return
end
%% check if number can be divided by another integer
for k=2:(number/2)
if rem(number,k)==0
result=false;
return
end
end
【讨论】:
上面的答案是不正确的......它认为9是素数,而不是
function result=myprime(n)
%result=true;
%check if number is a nonnegative integer
if floor(n)~=n || n<0
result=false;
return
end
% check if number can be divided by another integer
for k=2:(n/2)
if rem(n,k)==0
result=false;
return
end
end
result=true;
return
end
【讨论】:
计算
a = input('Enter a value: ');
b = input ('Enter b value: ');
for(x = a : b)
if (isprime(x)==1)
fprintf('%d is prime number \n',x)
end
end
【讨论】:
我的程序是这样的
function tf = isprim(n)
%this function will check whether the number is prime or not
tf = true;
for i = 2:n-1
if rem(n,i) == 0
tf = false;
break
end
end
【讨论】: