26 lines
815 B
Text
26 lines
815 B
Text
10 FOR p=2 TO 61
|
|
20 LET n=p: GO SUB 1000
|
|
30 IF NOT n THEN GO TO 200
|
|
40 FOR h=1 TO p-1
|
|
50 FOR d=1 TO h-1+p
|
|
60 IF NOT (FN m((h+p)*(p-1),d)=0 AND FN w(-p*p,h)=FN m(d,h)) THEN GO TO 180
|
|
70 LET q=INT (1+((p-1)*(h+p)/d))
|
|
80 LET n=q: GO SUB 1000
|
|
90 IF NOT n THEN GO TO 180
|
|
100 LET r=INT (1+(p*q/h))
|
|
110 LET n=r: GO SUB 1000
|
|
120 IF (NOT n) OR ((FN m((q*r),(p-1))<>1)) THEN GO TO 180
|
|
130 PRINT p;" ";q;" ";r
|
|
180 NEXT d
|
|
190 NEXT h
|
|
200 NEXT p
|
|
210 STOP
|
|
1000 IF n<4 THEN LET n=(n>1): RETURN
|
|
1010 IF (NOT FN m(n,2)) OR (NOT FN m(n,3)) THEN LET n=0: RETURN
|
|
1020 LET i=5
|
|
1030 IF NOT ((i*i)<=n) THEN LET n=1: RETURN
|
|
1040 IF (NOT FN m(n,i)) OR NOT FN m(n,(i+2)) THEN LET n=0: RETURN
|
|
1050 LET i=i+6
|
|
1060 GO TO 1030
|
|
2000 DEF FN m(a,b)=a-(INT (a/b)*b): REM Mod function
|
|
2010 DEF FN w(a,b)=FN m(FN m(a,b)+b,b): REM Mod function modified
|