我试图做一个函数来检查值是否为素数或不使用尾递归函数,所以请有人帮助我这个
declare
fun {PrimeR X D}
if X==2 orelse X==3 then 1
elseif X<2 andthen ((X mod D)==0) andthen D =< X then 0
elseif ((X mod D)=0) then 1
else {PrimeR X D+1}
end
end
{Browse {PrimeR 6 1}}
如果您想使用迭代函数
declare
fun {IsPrime X}
fun {PrimeItter X N}
case (X mod N) of 0 then X==N
else {PrimeItter X N+1} end
end
in
{PrimeItter X 2}
end
{Browse {IsPrime 31}}