私はこの質問を理解しようとしています。
primeset
入力が正の整数 n で、出力が p が n を割るすべての素数 p の集合である手続き を書きます。
これまでに次のことを試しました。こちらはメイプルを使用。
primeset:=proc
# Determine if n is divisble by p:
local p;
for p from 1 to n do
if isprime(p) then # check divisibility by primes
if modp(n,p) = 0 then # check if divided by prime
return false;
end if;
end if;
end do;
return true;
end proc;
# VARIABLES:
# INPUT:
# n is a (positive) integer
# LOCAL:
# p is a (positive) integer.
# OUTPUT:
# output is the set of all primes p such that p divides n.
私の出力はこれでした:
primeset := proc (n) local p; for p to n do if isprime(p) then if modp(n, p) = 0 then return false end if end if end do; return true end proc.
2、4、10 などのいくつかの数字で実行しようとしましたが、得られたのは false、false、false だけでした。
誰かがいくつかの提案を提供できれば、それは素晴らしいことです。