40 lines
1.0 KiB
Plaintext
40 lines
1.0 KiB
Plaintext
int Prime1;
|
|
|
|
func Semiprime(N); \Return 'true' if N is semiprime
|
|
int N, F, C;
|
|
[C:= 0; F:= 2;
|
|
repeat if rem(N/F) = 0 then
|
|
[C:= C+1;
|
|
Prime1:= N;
|
|
N:= N/F;
|
|
]
|
|
else F:= F+1;
|
|
until F > N;
|
|
return C = 2;
|
|
];
|
|
|
|
int N, C, Prime2;
|
|
[Format(4,0);
|
|
N:= 3; C:= 0;
|
|
loop [if Semiprime(N) then
|
|
[if rem(Prime1/4) = 3 then
|
|
[Prime2:= N/Prime1;
|
|
if Prime2 # Prime1 and rem(Prime2/4) = 3 then
|
|
[C:= C+1;
|
|
if C <= 50 then
|
|
[RlOut(0, float(N));
|
|
if rem(C/10) = 0 then CrLf(0);
|
|
];
|
|
if rem(C/1000)=0 then ChOut(0, ^.);
|
|
if C >= 26828 then
|
|
[Text(0, "^m^jThe 26828th Blum integer is: ");
|
|
IntOut(0, N); CrLf(0);
|
|
quit;
|
|
];
|
|
];
|
|
];
|
|
];
|
|
N:= N+2;
|
|
];
|
|
]
|