直角數組,即能組成直角三角形的三個整數組。例如3,4,5;5,12,13等。
基本介紹
- 中文名:直角數組
- 性質:數組
- 屬性:直角
- 組成直角:三角形的三個整數組
簡介,相關程式,擴展與推論,
簡介
就是能組成直角三角形的三個整數組.
我不清楚這組數字應該被稱做什麼. 但是很多人稱它為直角數組.
是不是這樣比較好記.
例如3, 4, 5
5, 12, 13
11, 60, 61
等等.
各組每個數字分別擴大相同倍數.,也能組成直角三角形.
直角三角形的直角兩邊和斜邊的關係, 最為特別.
x2 +y2 = z2 直角兩邊的平方和, 等於斜邊的平方.
但除了最常見的 3,4,5. 5,12,13 及其倍數之外, 還有沒有其他的數呢?
相關程式
以前的數學家是用手去計算. 現在是電腦時代, 我們可以用電腦去做這個找尋的工作. 所以介紹一個找直角數的小程式, 而且是一式兩款. 因為在香港是教 Pascal. 而目前最多人用, 而且已經轉為免費的是 Turbo C.
所以各做了一個程式在下面:
如果你的電腦速度比較慢, 可以把 w=1000 的值減少, 例如改為200.
Turbo C
Pascal
/* find out x^2+y^2=z^2 */
main(){
long a,b,c,x,y,z;
long w=1000;
for(x=1;x<w;x++){
for(y=x+1;y<w;y++){
a=x*x+y*y;
z=x+1; c=1;
while(c){
b=z*z;
if(b==a){
printf("%ld %ld %ld\n",x,y,z);
c=0;}
else if(b<a) z++;
else c=0;}}}
}
{ find out x^2+y^2=z^2 }
program sqare_int;
uses
WinCrt;
var
a,b,w,x,y,z:longint;
begin
w:=1000;
for x:=1 to w do
begin
for y:=x+1 to w do
begin
a:=x*x+y*y;
z:=x+1;
repeat
begin
b:=z*z;
if b=a then writeln(x,' ',y,' ',z);
z:=z+1
end
until b>a;
end
end
end.
擴展與推論
從前有一位數學家提出了一個假設.(費馬大定理)
x^n + y^n = z^n
如果 n>2, xy及z就沒有全正整數的值.
當然, 這個假設已經被證實了. 但我們也可以用電腦嘗試一下,
只要找出程式內紅字的部份改為三連乘. 就變成 x3 +y3 = z3, 試看有沒有答案. 同樣的方法, 可以嘗試四次方或任意次方的數值, 看看是否有奇蹟會出現, 把這個假設再編寫.
同樣我們可以得出這樣一個規律,如果第一個數是a,那么後兩個數就是b,b+1,那么a²=b+b+1
這樣就可以很方便的求出3個平方數了