View Category

### Find all Pythagorean triangles with length or height less than or equal to 20

Pythagorean triangles are right angle triangles whose sides comply with the following equation:

a * a + b * b = c * c

where c represents the length of the hypotenuse, and a and b represent the lengths of the other two sides. Find all such triangles where a, b and c are non-zero integers with a and b less than or equal to 20. Sort your results by the size of the hypotenuse. The expected answer is:

a * a + b * b = c * c

where c represents the length of the hypotenuse, and a and b represent the lengths of the other two sides. Find all such triangles where a, b and c are non-zero integers with a and b less than or equal to 20. Sort your results by the size of the hypotenuse. The expected answer is:

`[3, 4, 5]`

`[6, 8, 10]`

`[5, 12, 13]`

`[9, 12, 15]`

`[8, 15, 17]`

`[12, 16, 20]`

`[15, 20, 25]`

php

for ($x = 1; $x <= 20; $x++) {

for ($y = $x; $y <= 20; $y++) {

$z = hypot($x, $y); // or $z = sqrt($x*$x + $y*$y);

if (round($z) == $z) {

$array = array($x, $y, $z);

sort($array, SORT_NUMERIC);

$res[] = $array;

}

}

}

// calculate the total of the sides

foreach ($res as $a) {

$total[] = ($a[0] + $a[1] + $a[2]);

}

array_multisort($total, $res); // and sort them after the total

// result is in $res

for ($y = $x; $y <= 20; $y++) {

$z = hypot($x, $y); // or $z = sqrt($x*$x + $y*$y);

if (round($z) == $z) {

$array = array($x, $y, $z);

sort($array, SORT_NUMERIC);

$res[] = $array;

}

}

}

// calculate the total of the sides

foreach ($res as $a) {

$total[] = ($a[0] + $a[1] + $a[2]);

}

array_multisort($total, $res); // and sort them after the total

// result is in $res

### Greatest Common Divisor

Find the largest positive integer that divides two given numbers without a remainder. For example, the GCD of 8 and 12 is 4.