RosettaCodeData/Task/List-comprehensions/Lua/list-comprehensions-2.lua
2023-07-01 13:44:08 -04:00

15 lines
367 B
Lua

function get(key)
return (function(arg) return arg[key] end)
end
function is_pythagorean(arg)
return (arg.x^2 + arg.y^2 == arg.z^2)
end
function list_pythagorean_triples(n)
return LC:new():range("x",1,n):range("y",1,get("x")):range("z", get("y"), n):where(is_pythagorean).iter
end
for arg in list_pythagorean_triples(100) do
print(arg.x, arg.y, arg.z)
end