ピタゴラスの定理の整数解(原始ピタゴラス数)
ピタゴラスの定理の整数解(原始ピタゴラス数)
子供がピタゴラスの定理の話をしていた。 いくつか整数解の組合せを知っているようだ。
aとbが1~1000までとすると、どのくらい整数解があるのか気になった。 wikipediaによると原始ピタゴラス数と言うらしい。 Rでやってみる。
## ピタゴラスの定理
library(gmp)
n <- 1000
i <- 1
ans <- matrix(0, floor(n) * 3, ncol = 3)
for (a in 1:n) {
for (b in 1:n) {
if (a <= b) {
if (floor(sqrt(a * a + b * b)) == sqrt(a * a + b * b)) {
temp <- c(a, b, sqrt(a^2 + b^2))
if (Reduce(gcd, temp) == 1) {
ans[i, ] <- c(a, b, sqrt(a^2 + b^2))
i <- i + 1
}
}
}
}
}
ans <- ans[apply(ans, 1, sum) != 0, ]
ans
## [,1] [,2] [,3]
## [1,] 3 4 5
## [2,] 5 12 13
## [3,] 7 24 25
## [4,] 8 15 17
## [5,] 9 40 41
## [6,] 11 60 61
## [7,] 12 35 37
## [8,] 13 84 85
## [9,] 15 112 113
## [10,] 16 63 65
## [11,] 17 144 145
## [12,] 19 180 181
## [13,] 20 21 29
## [14,] 20 99 101
## [15,] 21 220 221
## [16,] 23 264 265
## [17,] 24 143 145
## [18,] 25 312 313
## [19,] 27 364 365
## [20,] 28 45 53
## [21,] 28 195 197
## [22,] 29 420 421
## [23,] 31 480 481
## [24,] 32 255 257
## [25,] 33 56 65
## [26,] 33 544 545
## [27,] 35 612 613
## [28,] 36 77 85
## [29,] 36 323 325
## [30,] 37 684 685
## [31,] 39 80 89
## [32,] 39 760 761
## [33,] 40 399 401
## [34,] 41 840 841
## [35,] 43 924 925
## [36,] 44 117 125
## [37,] 44 483 485
## [38,] 48 55 73
## [39,] 48 575 577
## [40,] 51 140 149
## [41,] 52 165 173
## [42,] 52 675 677
## [43,] 56 783 785
## [44,] 57 176 185
## [45,] 60 91 109
## [46,] 60 221 229
## [47,] 60 899 901
## [48,] 65 72 97
## [49,] 68 285 293
## [50,] 69 260 269
## [51,] 75 308 317
## [52,] 76 357 365
## [53,] 84 187 205
## [54,] 84 437 445
## [55,] 85 132 157
## [56,] 87 416 425
## [57,] 88 105 137
## [58,] 92 525 533
## [59,] 93 476 485
## [60,] 95 168 193
## [61,] 96 247 265
## [62,] 100 621 629
## [63,] 104 153 185
## [64,] 105 208 233
## [65,] 105 608 617
## [66,] 108 725 733
## [67,] 111 680 689
## [68,] 115 252 277
## [69,] 116 837 845
## [70,] 119 120 169
## [71,] 120 209 241
## [72,] 120 391 409
## [73,] 123 836 845
## [74,] 124 957 965
## [75,] 129 920 929
## [76,] 132 475 493
## [77,] 133 156 205
## [78,] 135 352 377
## [79,] 136 273 305
## [80,] 140 171 221
## [81,] 145 408 433
## [82,] 152 345 377
## [83,] 155 468 493
## [84,] 156 667 685
## [85,] 160 231 281
## [86,] 161 240 289
## [87,] 165 532 557
## [88,] 168 425 457
## [89,] 168 775 793
## [90,] 175 288 337
## [91,] 180 299 349
## [92,] 184 513 545
## [93,] 185 672 697
## [94,] 189 340 389
## [95,] 195 748 773
## [96,] 200 609 641
## [97,] 203 396 445
## [98,] 204 253 325
## [99,] 205 828 853
## [100,] 207 224 305
## [101,] 215 912 937
## [102,] 216 713 745
## [103,] 217 456 505
## [104,] 220 459 509
## [105,] 225 272 353
## [106,] 228 325 397
## [107,] 231 520 569
## [108,] 232 825 857
## [109,] 240 551 601
## [110,] 248 945 977
## [111,] 252 275 373
## [112,] 259 660 709
## [113,] 260 651 701
## [114,] 261 380 461
## [115,] 273 736 785
## [116,] 276 493 565
## [117,] 279 440 521
## [118,] 280 351 449
## [119,] 280 759 809
## [120,] 287 816 865
## [121,] 297 304 425
## [122,] 300 589 661
## [123,] 301 900 949
## [124,] 308 435 533
## [125,] 315 572 653
## [126,] 315 988 1037
## [127,] 319 360 481
## [128,] 320 999 1049
## [129,] 333 644 725
## [130,] 336 377 505
## [131,] 336 527 625
## [132,] 341 420 541
## [133,] 348 805 877
## [134,] 364 627 725
## [135,] 368 465 593
## [136,] 369 800 881
## [137,] 372 925 997
## [138,] 385 552 673
## [139,] 387 884 965
## [140,] 396 403 565
## [141,] 400 561 689
## [142,] 407 624 745
## [143,] 420 851 949
## [144,] 429 460 629
## [145,] 429 700 821
## [146,] 432 665 793
## [147,] 448 975 1073
## [148,] 451 780 901
## [149,] 455 528 697
## [150,] 464 777 905
## [151,] 468 595 757
## [152,] 473 864 985
## [153,] 481 600 769
## [154,] 495 952 1073
## [155,] 496 897 1025
## [156,] 504 703 865
## [157,] 533 756 925
## [158,] 540 629 829
## [159,] 555 572 797
## [160,] 559 840 1009
## [161,] 576 943 1105
## [162,] 580 741 941
## [163,] 585 928 1097
## [164,] 615 728 953
## [165,] 616 663 905
## [166,] 620 861 1061
## [167,] 645 812 1037
## [168,] 660 779 1021
## [169,] 660 989 1189
## [170,] 696 697 985
## [171,] 704 903 1145
## [172,] 705 992 1217
## [173,] 731 780 1069
## [174,] 744 817 1105
## [175,] 765 868 1157
## [176,] 799 960 1249
## [177,] 832 855 1193
## [178,] 884 987 1325
## [179,] 893 924 1285