2016-12-05 22:15:40 +01:00
|
|
|
function range(begin, end) {
|
|
|
|
|
for (let i = begin; i < end; ++i)
|
|
|
|
|
yield i;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function triples(n) {
|
2017-09-23 10:01:46 +02:00
|
|
|
return [
|
|
|
|
|
[x, y, z]
|
|
|
|
|
for each(x in range(1, n + 1))
|
|
|
|
|
for each(y in range(x, n + 1))
|
|
|
|
|
for each(z in range(y, n + 1))
|
|
|
|
|
if (x * x + y * y == z * z)
|
|
|
|
|
]
|
2016-12-05 22:15:40 +01:00
|
|
|
}
|
|
|
|
|
|
2017-09-23 10:01:46 +02:00
|
|
|
for each(var triple in triples(20))
|
|
|
|
|
print(triple);
|