is not prime number command , function to find the nearest prime number
2 次查看(过去 30 天)
显示 更早的评论
This is the code I have written :
function[k]=next_prime(n)
k=n
while ( k~=isprime(k))
k=k+1
if k~isprime(k)
end
end
I have tried to see what my error is by writing a similar function for the next nearest integer that divides by 5, and another function for the next nearest integer.
function[k]=mod5(n)
k=n
while ( mod(k,5)~=0)
k=k+1
end
end
The first function works as expected.
function[k]=nextint(n)
k=n
while ( k~=isinteger(k))
k=k+0.1
end
end
The second one, I seem to be having a similar issue as for the prime function ... it just keeps going adding 1 (0.1 respectively).
(I note that if i set k=1 and write the comman ' k~=isprime(k) ' it returns logical true , 1, whereas we would expect logical false? )
Many thanks for your help.
0 个评论
回答(2 个)
Prahelika Gayatri N
2020-7-28
function[k]=next_prime(n)
j=0;
while n>0
if j>n && isprime(j)
k=j;
return
end
j=j+1;
end
1 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Number Theory 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!