35 lines
716 B
Plaintext
35 lines
716 B
Plaintext
var powers = Fn.new { |m|
|
|
var i = 0
|
|
return Fn.new {
|
|
var p = i.pow(m)
|
|
i = i + 1
|
|
return p
|
|
}
|
|
}
|
|
|
|
var squaresNotCubes = Fn.new { |squares, cubes|
|
|
var sq = squares.call()
|
|
var cu = cubes.call()
|
|
return Fn.new {
|
|
var p
|
|
while (true) {
|
|
if (sq < cu) {
|
|
p = sq
|
|
sq = squares.call()
|
|
return p
|
|
}
|
|
if (sq == cu) sq = squares.call()
|
|
cu = cubes.call()
|
|
}
|
|
}
|
|
}
|
|
|
|
var squares = powers.call(2)
|
|
var cubes = powers.call(3)
|
|
var sqNotCu = squaresNotCubes.call(squares, cubes)
|
|
for (i in 0..29) {
|
|
var p = sqNotCu.call()
|
|
if (i > 19) System.write("%(p) ")
|
|
}
|
|
System.print()
|