RosettaCodeData/Task/Loops-Increment-loop-index-within-loop-body/Seed7/loops-increment-loop-index-within-loop-body.seed7
2023-07-01 13:44:08 -04:00

31 lines
706 B
Text

$ include "seed7_05.s7i";
const func boolean: isPrime (in integer: number) is func
result
var boolean: result is FALSE;
local
var integer: count is 2;
begin
if number = 2 then
result := TRUE;
elsif number > 2 then
while number rem count <> 0 and count * count <= number do
incr(count);
end while;
result := number rem count <> 0;
end if;
end func;
const proc: main is func
local
var integer: i is 42;
var integer: n is 0;
begin
for i range 42 to integer.last until n >= 42 do
if isPrime(i) then
incr(n);
writeln("n = " <& n lpad 2 <& i lpad 16);
i +:= i - 1;
end if;
end for;
end func;