[分享] a^2 + b^2 + c^2 = d^2
有自己在出數學題目的高中老師,
在空間向量的時候, 應該會遇到"湊數字"的問題
也就是, 若 a^2 + b^2 + c^2 = d^2 時,
要讓 a, b, c, d 都是正整數, 除了 (a, b, c) = (2, 2, 1)
真的就很難找到好用的數字
所以, 就寫了個小程式, 把答案附上, 給老師們參考
2^2 + 2^2 + 1^2 = 3^2
6^2 + 3^2 + 2^2 = 7^2
7^2 + 4^2 + 4^2 = 9^2
7^2 + 6^2 + 6^2 = 11^2
8^2 + 4^2 + 1^2 = 9^2
9^2 + 6^2 + 2^2 = 11^2
11^2 + 10^2 + 2^2 = 15^2
12^2 + 4^2 + 3^2 = 13^2
12^2 + 9^2 + 8^2 = 17^2
12^2 + 12^2 + 1^2 = 17^2
14^2 + 5^2 + 2^2 = 15^2
15^2 + 10^2 + 6^2 = 19^2
16^2 + 11^2 + 8^2 = 21^2
16^2 + 13^2 + 4^2 = 21^2
16^2 + 15^2 + 12^2 = 25^2
17^2 + 6^2 + 6^2 = 19^2
18^2 + 6^2 + 1^2 = 19^2
18^2 + 13^2 + 6^2 = 23^2
18^2 + 14^2 + 3^2 = 23^2
19^2 + 8^2 + 4^2 = 21^2
20^2 + 5^2 + 4^2 = 21^2
20^2 + 12^2 + 9^2 = 25^2
20^2 + 20^2 + 17^2 = 33^2
21^2 + 16^2 + 12^2 = 29^2
21^2 + 18^2 + 14^2 = 31^2
22^2 + 6^2 + 3^2 = 23^2
22^2 + 14^2 + 7^2 = 27^2
22^2 + 21^2 + 6^2 = 31^2
23^2 + 10^2 + 10^2 = 27^2
23^2 + 14^2 + 2^2 = 27^2
24^2 + 12^2 + 11^2 = 29^2
24^2 + 16^2 + 3^2 = 29^2
24^2 + 24^2 + 23^2 = 41^2
25^2 + 10^2 + 2^2 = 27^2
25^2 + 20^2 + 8^2 = 33^2
26^2 + 7^2 + 2^2 = 27^2
26^2 + 18^2 + 15^2 = 35^2
26^2 + 22^2 + 19^2 = 39^2
27^2 + 14^2 + 6^2 = 31^2
27^2 + 24^2 + 8^2 = 37^2
28^2 + 16^2 + 7^2 = 33^2
28^2 + 17^2 + 4^2 = 33^2
28^2 + 21^2 + 12^2 = 37^2
28^2 + 24^2 + 3^2 = 37^2
29^2 + 22^2 + 14^2 = 39^2
29^2 + 26^2 + 2^2 = 39^2
29^2 + 28^2 + 20^2 = 45^2
30^2 + 6^2 + 5^2 = 31^2
30^2 + 17^2 + 6^2 = 35^2
30^2 + 18^2 + 1^2 = 35^2
30^2 + 25^2 + 18^2 = 43^2
30^2 + 30^2 + 7^2 = 43^2
31^2 + 8^2 + 8^2 = 33^2
31^2 + 24^2 + 12^2 = 41^2
32^2 + 7^2 + 4^2 = 33^2
32^2 + 8^2 + 1^2 = 33^2
32^2 + 24^2 + 9^2 = 41^2
33^2 + 10^2 + 6^2 = 35^2
33^2 + 24^2 + 4^2 = 41^2
34^2 + 14^2 + 13^2 = 39^2
34^2 + 19^2 + 2^2 = 39^2
34^2 + 27^2 + 18^2 = 47^2
34^2 + 31^2 + 22^2 = 51^2
35^2 + 14^2 + 10^2 = 39^2
35^2 + 28^2 + 4^2 = 45^2
36^2 + 8^2 + 3^2 = 37^2
36^2 + 24^2 + 23^2 = 49^2
36^2 + 28^2 + 27^2 = 53^2
36^2 + 31^2 + 12^2 = 49^2
36^2 + 32^2 + 9^2 = 49^2
36^2 + 33^2 + 4^2 = 49^2
37^2 + 20^2 + 16^2 = 45^2
37^2 + 36^2 + 12^2 = 53^2
38^2 + 18^2 + 9^2 = 43^2
38^2 + 21^2 + 18^2 = 47^2
38^2 + 27^2 + 6^2 = 47^2
38^2 + 31^2 + 14^2 = 51^2
38^2 + 34^2 + 1^2 = 51^2
38^2 + 37^2 + 34^2 = 63^2
39^2 + 12^2 + 4^2 = 41^2
39^2 + 18^2 + 2^2 = 43^2
40^2 + 16^2 + 13^2 = 45^2
40^2 + 19^2 + 8^2 = 45^2
40^2 + 24^2 + 15^2 = 49^2
40^2 + 32^2 + 25^2 = 57^2
40^2 + 40^2 + 7^2 = 57^2
程式附在後面, 很簡單的 perl
#!/usr/bin/perl
#
#
$n = 40;
foreach $a(1..$n) {
foreach $b(1..$a) {
foreach $c(1..$b) {
$d = sqrt($a * $a + $b * $b + $c * $c);
if($d == int($d) and threef($a, $b, $c) == 1) {
print "$a^2 + $b^2 + $c^2 = $d^2\n";
}
}
}
}
sub threef
{
my ($x, $y, $z) = @_;
my $nd;
$nd = twof($x, $y);
$nd = twof($z, $nd);
# print "$x/$y/$z = $nd\n";
return $nd;
}
sub twof
{
my ($i, $j) = @_;
while(($i * $j) != 0) {
if($i >= $j) {
$i = $i - $j;
} else {
$j = $j - $i;
}
}
return ($i + $j);
}
--
家教經驗談 & 利用 TeX 編考卷與講義
http://dunst-kang.blogspot.com/
要轉錄文章的人請注意三件事
1. 請註明出處, 2. 請保留簽名檔, 3. 請發個 mail 讓我知道
我的動態...(要簡單的註冊才能互動)歡迎一起來囉
bbs 型的微型網誌(plurk) http://plurk.com/dunst/invite
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.102.208
推
12/31 17:54, , 1F
12/31 17:54, 1F
推
12/31 17:59, , 2F
12/31 17:59, 2F
推
01/01 00:28, , 3F
01/01 00:28, 3F
推
01/01 00:33, , 4F
01/01 00:33, 4F
推
01/01 00:35, , 5F
01/01 00:35, 5F
推
01/01 01:40, , 6F
01/01 01:40, 6F
推
01/01 11:25, , 7F
01/01 11:25, 7F
推
01/01 18:16, , 8F
01/01 18:16, 8F
推
01/01 23:56, , 9F
01/01 23:56, 9F
推
01/02 00:02, , 10F
01/02 00:02, 10F
推
01/02 02:24, , 11F
01/02 02:24, 11F
推
01/07 16:48, , 12F
01/07 16:48, 12F
推
01/08 21:00, , 13F
01/08 21:00, 13F
推
01/17 04:17, , 14F
01/17 04:17, 14F