26 lines
659 B
Plaintext
26 lines
659 B
Plaintext
code ChOut=8, IntOut=11;
|
|
|
|
func Gen(M); \Generate Mth powers of positive integers
|
|
int M;
|
|
int N, R, I;
|
|
[N:= [0, 0, 0, 0]; \provides own/static variables
|
|
R:= 1;
|
|
for I:= 1 to M do R:= R*N(M);
|
|
N(M):= N(M)+1;
|
|
return R;
|
|
];
|
|
|
|
func Filter; \Generate squares of positive integers that aren't cubes
|
|
int S, C;
|
|
[C:= [0]; \static variable = smallest cube > current square
|
|
repeat S:= Gen(2);
|
|
while S > C(0) do C(0):= Gen(3);
|
|
until S # C(0);
|
|
return S;
|
|
];
|
|
|
|
int I;
|
|
[for I:= 1 to 20 do Filter; \drop first 20 values
|
|
for I:= 1 to 10 do [IntOut(0, Filter); ChOut(0, ^ )]; \show next 10 values
|
|
]
|