素数判定
素数とは1 と自分自身以外に正の約数を持たない自然数で、1 でない数のことである。 正の約数の個数が 2 である自然数と言い換えることもできる。例えば17の場合、1と17だけが約数。プログラミングで判定するためには、整数2から自分自身(この場合17)未満、つまり2から16で順に割り算を行い、割り切れたらfalseを返すような条件式を記述する。
var number = 50 var isPrime = true for var i = 2; i < number; i++ { if number % i == 0 { =>4times isPrime = false } } print(isPrime) => false
50は因数を4つ持っているため処理が4回(4times)行われている。
しかし、このままでは1か2の場合に条件判定が行われないので、下記条件のように書き換える。
var number = 4 var isPrime = true if number == 1 { isPrime = false } if number != 1 && number != 2 { for var i = 2; i < number; i++ { if number % i == 0 { isPrime = false } } } print(isPrime)