25 lines
427 B
Text
25 lines
427 B
Text
MODULE WilsonPrimes;
|
|
FROM InOut IMPORT WriteCard, WriteLn;
|
|
|
|
VAR i: CARDINAL;
|
|
|
|
PROCEDURE Wilson(n: CARDINAL): BOOLEAN;
|
|
VAR
|
|
f, i: CARDINAL;
|
|
BEGIN
|
|
IF n<2 THEN RETURN FALSE END;
|
|
f := 1;
|
|
FOR i := n-1 TO 2 BY -1 DO
|
|
f := f*i MOD n
|
|
END;
|
|
RETURN f + 1 = n
|
|
END Wilson;
|
|
|
|
BEGIN
|
|
FOR i := 1 TO 100 DO
|
|
IF Wilson(i) THEN
|
|
WriteCard(i, 3)
|
|
END
|
|
END;
|
|
WriteLn
|
|
END WilsonPrimes.
|