這個(gè)算法又叫“韓信點(diǎn)兵”.相傳韓信才略過(guò)人,領(lǐng)兵打仗時(shí),為了對(duì)敵方保密,從不點(diǎn)自己軍隊(duì)的人數(shù),只是讓他的士兵以三人一排很快地從他面前過(guò)去,再以五人一排走一次,最后以七人一排走過(guò)去,由于隊(duì)伍走得很快,別人根本來(lái)不及數(shù)有多少人.然而韓信只對(duì)各隊(duì)士兵的最后一排掠一眼,就知道總數(shù)了,他利用的就是上面的這個(gè)口訣.
畫出程序框圖,并編寫程序解決“韓信點(diǎn)兵”問(wèn)題.
分析:我們只介紹一種普通的算法.“韓信點(diǎn)兵”問(wèn)題相當(dāng)于求關(guān)于x,y,z的不定方程組的正整數(shù)解.設(shè)所求的數(shù)為m,根據(jù)題意m應(yīng)同時(shí)滿足下列三個(gè)條件:
m MOD 3=2;m MOD 5=3;m MOD 7=2.
讓m從2開始檢驗(yàn),若三個(gè)條件同時(shí)滿足,則m即為所求.
由于重復(fù)進(jìn)行進(jìn)行檢驗(yàn),因此要設(shè)計(jì)循環(huán)結(jié)構(gòu)來(lái)解決.
解:程序框圖,如下圖.
程序:
m=2
DO
r1=m MOD 3
r2=m MOD 5
r3=m MOD 7
m=m+1
LOOP UNTIL r1=2 AND r2 =3 AND r3 =2
PRINT m
END
課堂小結(jié)
(1)復(fù)習(xí)有關(guān)算法步驟、程序框圖、算法語(yǔ)句的重點(diǎn)題型.
(2)總結(jié)有關(guān)算法步驟、程序框圖、算法語(yǔ)句的思想方法.
年級(jí) | 高中課程 | 年級(jí) | 初中課程 |
高一 | 高一免費(fèi)課程推薦! | 初一 | 初一免費(fèi)課程推薦! |
高二 | 高二免費(fèi)課程推薦! | 初二 | 初二免費(fèi)課程推薦! |
高三 | 高三免費(fèi)課程推薦! | 初三 | 初三免費(fèi)課程推薦! |
科目:高中數(shù)學(xué) 來(lái)源:設(shè)計(jì)必修三數(shù)學(xué)人教A版 人教A版 題型:044
電視劇《華羅庚》中有一個(gè)鏡頭:華羅庚少年時(shí)代用心算法解出了“孫子算經(jīng)”中的難題,原文是:“今有物不知其數(shù),三三數(shù)之剩二,五五數(shù)之剩三,七七數(shù)之剩二,問(wèn)物幾何?學(xué)曰:二十三.”即一個(gè)正整數(shù),被3,5,7除,余數(shù)分別為2,3,2.“孫子算經(jīng)”解法的口訣是:“三人同行七十稀,五樹梅花二十一,其子團(tuán)圓正月豐,除百零五便得知.”
這個(gè)算法又叫“韓信點(diǎn)兵”.相傳韓信才略過(guò)人,領(lǐng)兵打仗時(shí),為了對(duì)敵方保密,從不點(diǎn)自己軍隊(duì)的人數(shù),只是讓他的士兵以三人一排很快地從他面前過(guò)去,再以五人一排走一次,最后以七人一排走過(guò)去,由于隊(duì)伍走得很快,別人根本來(lái)不及數(shù)有多少人.然而韓信只對(duì)各隊(duì)士兵的最后一排掠一眼,就知道總數(shù)了,他利用的就是上面的這個(gè)口訣,你能理解這個(gè)口訣嗎?
求解“孫子問(wèn)題”的算法有很多,你能想出什么樣的算法?
查看答案和解析>>
科目:高中數(shù)學(xué) 來(lái)源: 題型:
這個(gè)算法又叫“韓信點(diǎn)兵”.相傳韓信才略過(guò)人,領(lǐng)兵打仗時(shí),為了對(duì)敵方保密,從不點(diǎn)自己軍隊(duì)的人數(shù),只是讓他的士兵以三人一排很快地從他面前過(guò)去,再以五人一排走一次,最后以七人一排走過(guò)去,由于隊(duì)伍走得很快,別人根本來(lái)不及數(shù)有多少人.然而韓信只對(duì)各隊(duì)士兵的最后一排掠一眼,就知道總數(shù)了,他利用的就是上面的這個(gè)口訣,你能理解這個(gè)口訣嗎?
求解“孫子問(wèn)題”的算法有很多,你能想出什么樣的算法?
查看答案和解析>>
百度致信 - 練習(xí)冊(cè)列表 - 試題列表
湖北省互聯(lián)網(wǎng)違法和不良信息舉報(bào)平臺(tái) | 網(wǎng)上有害信息舉報(bào)專區(qū) | 電信詐騙舉報(bào)專區(qū) | 涉歷史虛無(wú)主義有害信息舉報(bào)專區(qū) | 涉企侵權(quán)舉報(bào)專區(qū)
違法和不良信息舉報(bào)電話:027-86699610 舉報(bào)郵箱:58377363@163.com