直角数组

王朝百科·作者佚名  2010-03-21  
宽屏版  字体: |||超大  

就是能组成直角三角形的三个整数组.

我不清楚这组数字应该被称做什么. 但是很多人称它为直角数组.

是不是这样比较好记.

例如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

",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.

从前有一位数学家提出了一个假设.

xn + yn = zn

如果 n>2, xy及z就没有全正整数的值.

当然, 这个假设已经被证实了. 但我们也可以用电脑尝试一下,

只要找出程式内红字的部份改为三连乘. 就变成 x3 +y3 = z3, 试看有没有答案. 同样的方法, 可以尝试四次方或任意次方的数值, 看看是否有奇迹会出现, 把这个假设再编写.

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有