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.