㈠ 30以內勾股數
30以內勾股數:3,4,5。6,8,10。9,12,15,。12,16,20。15,20,25。18,25,30。
勾股數,又名畢氏三元數。勾股數就是可以構成一個直角三角形三邊的一組正整數。勾股定理:直角三角形兩條直角邊a、b的平方和等於斜邊c的平方(a²+b²=c²)。
(1)python判斷勾股數擴展閱讀:
常用套路
所謂勾股數,一般是指能夠構成直角三角形三條邊的三個正整數(例如a,b,c)。
即a²+b²=c²,a,b,c∈N
又由於,任何一個勾股數組(a,b,c)內的三個數同時乘以一個整數n得到的新數組(na,nb,nc)仍然是勾股數,所以一般我們想找的是a,b,c互質的勾股數組。
關於這樣的數組,比較常用也比較實用的套路有以下兩種:
第一類型
當a為大於1的奇數2n+1時,b=2n²+2n, c=2n²+2n+1。
實際上就是把a的平方數拆成兩個連續自然數,例如:
n=1時(a,b,c)=(3,4,5)
n=2時(a,b,c)=(5,12,13)
n=3時(a,b,c)=(7,24,25)
㈡ 用python輸出while循環求1到100的所以勾股數
# -*- coding: utf-8 -*-
# author: KaiFang
import math
i, j, k = 1, 1, 1
while i < 100:
while j < 100:
while k < 100:
ii = math.pow(i, 2)
jj = math.pow(j, 2)
kk = math.pow(k, 2)
if (ii + jj) == kk:
print('%d %d %d' % (i, j, k))
k += 1
j += 1
k = j
i += 1
j = i
參照下列圖片,格式改正確就行,不然運行不了
㈢ 求python代碼:輸出100以內的勾股數,輸出到一個文件中,看看我的要怎麼處理,輸出後老是有重復
forainrange(100):
forbinrange(a-1):
forcinrange(b-1):
ifa**2=b**2+c**2:
python不熟悉,大概可以這么弄。
㈣ 11的勾股數是多少
11的勾股數是11,60,61。
勾股定理,是一個基本的幾何定理,指直角三角形的兩條直角邊的平方和等於斜邊的平方。中國古代稱直角三角形為勾股形,並且直角邊中較小者為勾,另一長直角邊為股,斜邊為弦,所以稱這個定理為勾股定理,也有人稱商高定理。
勾股定理現約有500種證明方法,是數學定理中證明方法最多的定理之一。勾股定理是人類早期發現並證明的重要數學定理之一,用代數思想解決幾何問題的最重要的工具之一,也是數形結合的紐帶之一。
在中國,周朝時期的商高提出了「勾三股四弦五」的勾股定理的特例。在西方,最早提出並證明此定理的為公元前6世紀古希臘的畢達哥拉斯學派,他們用演繹法證明了直角三角形斜邊平方等於兩直角邊平方之和。
㈤ 用python編寫程序輸出50以內的勾股數,如圖要求每行顯示6組,各組勾股數無重復
from__future__importprint_function
n=0
foriinrange(1,50):
forjinrange(i+1,50):
forkinrange(j+1,50):
ifi*i+j*j==k*k:
print("%2d,%2d,%2d"%(i,j,k),end='')
n+=1
ifn==6:
print()
n=0
㈥ 怎樣快速判斷一組數是否是勾股數
首先看看是不是常用的勾股數如3 4 5,6 8 10,5 12 13等,如果不是就用最大的一個數的平方去減剩餘兩個數中較大數的平方(用平方差公式),看是否等於最小數的平方.這是我常用的方法.
㈦ C語言,輸入三個整數,判斷其能否構成勾股數
int IsPyth(int num1,int num2,int num3)//判斷三數能否構成勾股數
{
int num1squ,num2squ,num3squ;
if(0!=num1 && 0!=num2 && 0!= num3)//三個數都不能為0,才能構成勾股數
{
num1squ=num1*num1;
num2squ=num2*num2;
num3squ=num3*num3;
if(num1squ=num2squ+num3squ || num2squ=num1squ+num3squ || num3squ=num1squ+num2squ )//任意一個數的平方等於其餘兩個數的平方和,則便能構成勾股數
return 1;//返回1,說明能構成勾股數
else
return 0;//返回0,說明不能構成勾股數
}
else//當其中任意一個數為0,都不能構成勾股數
return 0;//返回0,說明不能構成勾股數
}
然後在主函數中調用就可以了!
附上完整過程
-------------------------------------------------------------------------------------------------
#include <stdio.h>
void main()
{
int n1,n2,n3;
printf(「請輸入三個數:」);
scanf("%d %d %d",&n1,&n2,&n3);
if(IsPyth(n1,n2,n3))//判斷函數返回的值,不為0,則能構成勾股數
prinft("%d %d %d這三個數能構成勾股數!",n1,n2,n3);
else
prinft("%d %d %d這三個數不能構成勾股數!",n1,n2,n3);
}
將函數IsPyth()的所有內容放到void main()前面即可!
你試試!
㈧ 勾股數的3條規律總結
凡是可以構成一個直角三角形三邊的一組正整數,稱之為勾股數。那麼勾股數有什麼規律嗎?下面和我一起了解一下吧,供大家參考。
1、第一組勾股數
3,4,5
5,12,13
7,24,25
9,40,41
11,60,61
13,84,85
15,112,113
首先發現其最小值為奇數,而另外兩數是連續正整數。
我們用乘方進行嘗試。先給暫時沒看出關系的最小值進行乘方。
3²=9,5²=25,7²=49
大家有沒有發現,在第一列數據中,每組數的較大兩數之和正好等於這組數最小值的平方。即:
3²=9=4+5,5²=25=12+13,7²=49=24+25
我們再試幾組進行驗證。
9²=81=40+41,11²=121=60+61
目前看來這個規律是正確的。我們再次注意到開始時發現的規律:第一列中每組數較大兩數差為一。那麼總結這兩點就可初步發現以下規律:
一個正奇數(除1外)與兩個和等於此正奇數平方的連續正整數是一組勾股數。
設n為一正奇數(n≠1),那麼以n為最小值的一組勾股數可以是:n,(n²-1)/2,(n²+1)/2。
2、第二組勾股數
6,8,10
8,15,17
10,24,26
12,35,37
14,48,50
16,63,65
18,80,82
我們如法炮製,首先發現第二組數據均以偶數為最小數,而另外兩數是差為2的正整數。似乎也只能看出這么多,那我們繼續用最小數乘方對比另外兩數之和進行嘗試。
6²=36,10+8=18
8²=64,15+17=32
10²=100,24+26=50
這次好像是後兩數之和的二倍等於最小數平方?我們進行更多嘗試。
12²=144=2(35+37),14²=196=2(48+50)
初步看來規律正確,那我們還是用代數式驗證一下普遍性吧:
設m為一正偶數(m≠0,m≠2,m≠4),那麼以m為最小值的一組勾股數可以是:
m,(m²/4)-1,(m²/4)+1
驗證:[(m²/4)+1]²-[(m²/4)-1]²
=[(m²/4)²+m²/2+1]-[(m²/4)²-m²/2+1]
=(m²/4)²+m²/2+1-(m²/4)²+m²/2-1
=m²
驗證成功,可總結為以下規律:
當一個正偶數為最小值時,它(除0,2和4)與兩個和之二倍等於此正偶數平方的差為一的正整數是一組勾股數。
設m為一正偶數(m≠0,m≠2,m≠4),那麼以m為最小值的一組勾股數可以是:m,(m²/4)-1,(m²/4)+1。
3、特殊的勾股數規律
①12,16,20②18,24,30
首先根據勾股定理可以判斷它們都是勾股數。但是仔細觀察,我們發現它們每組的三個數都是一組勾股數的正整數倍。
3,4,5分別乘4得12,16,20
6,8,10分別乘3得18,24,30
一組勾股數的正整數倍也是一組勾股數嗎?我們還是用代數式驗證一下:
任意一組勾股數的正整數倍也是一組勾股數嗎?我們還是用代數式驗證一下:
設a²+b²=c²,則a,b,c分別乘n後為:
(na)²+(nb)²
=n²a²+n²b²
=n²(a²+b²)
=n²c²
=(nc)²
總結規律為一組勾股數的正整數倍還是一組勾股數。
㈨ 用Python for語句編寫程序輸出50以內的勾股數
#每個左邊的0表示一個空格
lst=[]
for a in range(1,50):
0000for b in range(1,50):
00000000for c in range(1,50):
000000000000if a<=b and a**2+b**2==c**2:
0000000000000000lst.append((a,b,c))
n=0
for a,b,c in lst:
0000s='{0},{1},{2}'.format(a,b,c)
0000print '{0:10}'.format(s),
0000n+=1
0000if 0==n%6:
00000000print
㈩ 怎樣確定勾股數
在直角三角形中,若以a、b表示兩條直角邊,c表示斜邊,勾股定理可以表述為a2+b2=c2。
滿足這個等式的正整數a、b、c叫做一組勾股數。
例如(3、4、5),(5、12、13),(6、8、10),(7、24、25)等一組一組的數,每一組都能滿足a2+b2=c2,因此它們都是勾股數組(其中3、4、5是最簡單的一組勾股數)。顯然,若直角三角形的邊長都為正整數,則這三個數便構成一組勾股數;反之,每一組勾股數都能確定一個邊長是正整數的直角三角形。因此,掌握確定勾股數組的方法對研究直角三角形具有重要意義。
1.任取兩個正整數m、n,使2mn是一個完全平方數,那麼
c=2+9+6=17。
則8、15、17便是一組勾股數。
證明:
∴a、b、c構成一組勾股數
2.任取兩個正整數m、n、(m>n),那麼
a=m2-n2,b=2mn,c=m2+n2構成一組勾股數。
例如:當m=4,n=3時,
a=42-32=7,b=2×4×3=24,c=42+32=25
則7、24、25便是一組勾股數。
證明:
∵ a2+b2=(m2-n2)+(2mn)2
=m4-2m2n2+n4+4m2n2
=m4+2m2n2+4n2
=(m2+n2)2
=c2
∴a、b、c構成一組勾股數。
3.若勾股數組中的某一個數已經確定,可用如下的方法確定另外兩個數。
首先觀察已知數是奇數還是偶數。
(1)若是大於1的奇數,把它平方後拆成相鄰的兩個整數,那麼奇數與這兩個整數構成一組勾股數。
例如9是勾股數中的一個數,
那麼9、40、41便是一組勾股數。
證明:設大於1的奇數為2n+1,那麼把它平方後拆成相鄰的兩個整數為
(2)若是大於2的偶數,把它除以2後再平方,然後把這個平方數分別減1,加1所得到的兩個整數和這個偶數構成一組勾股數。
例如8是勾股數組中的一個數。
那麼8、15,17便是一組勾股數。
證明:設大於2的偶數2n,那麼把這個偶數除以2後再平方,然後把這個平方數分別減1,加1所得的兩個整數為n2-1和n2+1
∵(2n)2+(n2-1)2=4n2+n4-2n2+1
=n4+2n2+1
=(n2+1)2
∴2n、n2-1、n2+1構成一組勾股數。