ではまず n が素数かどうか調べるプログラムを書きましょう。
def isprime(n)
var i=2 '割る数
while i < n && n mod i != 0 'i が n 未満かつ i が n を割り切れない間ループ
i=i+1 '割る数を1増やす
wend
return i==n ' 2以上n未満の自然数で割り切れなかったなら真を返す
end
n が素数 ⇔ n は 1 と n 以外に約数を持たない
です。
簡単なやりかただと、
2 から n-1 までの自然数で n を割ったとき、どの場合も割り切れなければnは素数になります。
「a が b を割り切れる」⇔「a を b で割った余りが 0」
プチコンでは a を b で割った余りは a mod b とかけます。
if a mod b == 0 then ? "a は b で割り切れる"