Special pythagorean triplet: Difference between revisions
Content added Content deleted
(Added Algol 68) |
(Added Algol W) |
||
Line 26: | Line 26: | ||
OD |
OD |
||
OD</lang> |
OD</lang> |
||
{{out}} |
|||
<pre> |
|||
a = 200, b = 375, c = 425 |
|||
a + b + c = 1000 |
|||
a * b * c = 31875000 |
|||
</pre> |
|||
=={{header|ALGOL W}}== |
|||
{{trans|Wren}} |
|||
...but doesn't stop on the first solution (thus verifying there is only one). |
|||
<lang algolw>% find the Pythagorian triplet a, b, c where a + b + c = 1000 % |
|||
for a := 1 until 1000 do begin |
|||
integer a2, b; |
|||
a2 := a * a; |
|||
b := a + 1; |
|||
while a + b < 1000 do begin |
|||
integer c; |
|||
c := 1000 - ( a + b ); |
|||
if c > b then begin |
|||
if a2 + b*b = c*c then begin |
|||
write( i_w := 1, s_w := 0, "a = ", a, ", b = ", b, ", c = ", c ); |
|||
write( i_w := 1, s_w := 0, "a + b + c = ", a + b + c ); |
|||
write( i_w := 1, s_w := 0, "a * b * c = ", a * b * c ) |
|||
end if_a2_plus_b2_e_c2 |
|||
end if_b_gt_c ; |
|||
b := b + 1 |
|||
end while_a_plus_b_lt_1000 |
|||
end for_a .</lang> |
|||
{{out}} |
{{out}} |
||
<pre> |
<pre> |