Pythagorean quadruples: Difference between revisions

Content added Content deleted
(Added Crystal translation of Ruby version.)
Line 448: Line 448:
<pre>The values of d <= 2200 which can't be represented:
<pre>The values of d <= 2200 which can't be represented:
1 2 4 5 8 10 16 20 32 40 64 80 128 160 256 320 512 640 1024 1280 2048</pre>
1 2 4 5 8 10 16 20 32 40 64 80 128 160 256 320 512 640 1024 1280 2048</pre>

=={{header|Crystal}}==
{{trans|Ruby}}
<lang Ruby>n = 2200
l_add, l = Hash(Int32, Bool).new(false), Hash(Int32, Bool).new(false)
(1..n).each do |x|
x2 = x * x
(x..n).each { |y| l_add[x2 + y * y] = true }
end

s = 3
(1..n).each do |x|
s1 = s
s += 2
s2 = s
((x+1)..n).each do |y|
l[y] = true if l_add[s1]
s1 += s2
s2 += 2
end
end

puts (1..n).reject{ |x| l[x] }.join(" ")</lang>
{{out}}
<pre>1 2 4 5 8 10 16 20 32 40 64 80 128 160 256 320 512 640 1024 1280 2048
</pre>


=={{header|D}}==
=={{header|D}}==