国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩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)的,你也試試吧...

主站蜘蛛池模板: 兴义市| 成安县| 驻马店市| 建德市| 喀喇沁旗| 南城县| 休宁县| 交口县| 斗六市| 曲阜市| 荃湾区| 崇阳县| 永济市| 阜康市| 东阳市| 明光市| 绥棱县| 曲沃县| 大石桥市| 监利县| 夏邑县| 浙江省| 泸定县| 永寿县| 平远县| 法库县| 左权县| 闵行区| 班玛县| 安福县| 察哈| 防城港市| 山西省| 南漳县| 梧州市| 余庆县| 县级市| 西宁市| 松潘县| 田东县| 长武县|