国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現(xiàn)在的位置是:首頁(yè) » scratch編程資訊

資訊內(nèi)容

?Scratch課堂丨學(xué)數(shù)學(xué)-算勾股數(shù)

極客小將2021-04-08-
勾股數(shù) 勾股數(shù)又名畢氏三元數(shù)?。勾股數(shù)就是可以構(gòu)成一個(gè)直角三角形三邊的一組正整數(shù)。勾股定理:直角三角形兩條直角邊a、b的平方和等于斜邊c的平方(a2+b2=c2) 01 題目

勾股數(shù)

勾股數(shù)又名畢氏三元數(shù)?。勾股數(shù)就是可以構(gòu)成一個(gè)直角三角形三邊的一組正整數(shù)。勾股定理:直角三角形兩條直角邊a、b的平方和等于斜邊c的平方(a2+b2=c2)

01

題目

請(qǐng)寫(xiě)出100以?xún)?nèi)所有的勾股數(shù)?

02

解題思路

我們用編寫(xiě)程序的方式可以快速解出這道題目。我們知道最小勾股數(shù)是3、4、5 。要避免寫(xiě)程序算出3、4、5和4、3、5這樣重復(fù)的勾股數(shù),就要使三個(gè)數(shù)符合a

03

程序腳本案例

upload/article/images/2021-04-08/2f774361ae046277e49619d00f2570f8.jpg

04

其它編程語(yǔ)言實(shí)現(xiàn)

?Python

#通過(guò)公式求勾股數(shù)

def Ht(k, m):

? ? ? ? ? ? a = k * (m * m - n * n)

? ? ? ? ? ? b = k * (2 * m * n)

? ? ? ? ? ? c = k * (m * m ?+ n * n)

? ? result = []

? ? for k0 in range(1, k + 1):

? ? ? ? for m0 in range(2, m + 1):

? ? ? ? ? ? for n0 in range(1, m0):

? ? ? ? ? ? ? ? a = k0 * (m0 * m0 - n0 * n0)

? ? ? ? ? ? ? ? b = k0 * (2 * m0 * n0)

? ? ? ? ? ? ? ? c = k0 * (m0 * m0 ?+ n0 * n0)

? ? ? ? ? ? ? ? if not {a, b, c} in result:

? ? ? ? ? ? ? ? ? ? result.append({a, b, c})

? ? result = [sorted(list(x)) for x in result]

? ? return (sorted(result,key=lambda x:x[0]),

? ? '共有 {length} 組勾股數(shù)'.format(length = len(result)))

Ht(10, 10) ?

c++ ? ?

#include?

using?namespace?std;

int?main()

{

????int?a,?b,?c;

????for?(a?=?1;?a?<?100;?a++)

????for?(b?=?1;?b?<?100;?b++)

????for?(c?=?1;?c?<?100;?c++)

????if?(a< p="">

????????cout?<<?a?<<?"?"?<<?b?<<?"?"?<<?c?<<?endl;

????return?0;

}

05

試一試

使用起邊的算法找出自然數(shù)100-1000中所有勾股數(shù)哦!

聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過(guò)郵件及時(shí)和我們聯(lián)系刪除

預(yù)約試聽(tīng)課

已有385人預(yù)約都是免費(fèi)的,你也試試吧...

主站蜘蛛池模板: 襄城县| 汉寿县| 金堂县| 永仁县| 马关县| 河津市| 高雄市| 绍兴县| 咸阳市| 信丰县| 大足县| 罗甸县| 石泉县| 金溪县| 鄢陵县| 凤翔县| 凤冈县| 锡林浩特市| 汝阳县| 交城县| 会理县| 双牌县| 阿瓦提县| 加查县| 华容县| 汶川县| 白河县| 寻乌县| 静乐县| 海伦市| 建瓯市| 兰州市| 塔城市| 肃南| 密云县| 西乌珠穆沁旗| 乐陵市| 镇雄县| 南安市| 丰城市| 石河子市|