設(shè)計(jì)框圖實(shí)現(xiàn)1+3+5+7+…+131的算法.
解:算法如下: 第一步:賦初值i=1,sum=0; 第二步:sum=sum+i,i=i+2; 第三步:如果i≤131,則反復(fù)執(zhí)行第二步,否則執(zhí)行下一步; 第四步:輸出sum; 第五步:結(jié)束. 程序框圖如圖. 綠色通道:(1)設(shè)計(jì)流程圖要分步進(jìn)行,把一個(gè)大的流程圖分割成幾個(gè)小的部分,按照三個(gè)基本結(jié)構(gòu)即順序、條件、循環(huán)結(jié)構(gòu)來(lái)局部安排,然后把流程圖進(jìn)行整合. (2)框圖畫完后,要進(jìn)行驗(yàn)證,按設(shè)計(jì)的流程分析是否能實(shí)現(xiàn)所求的數(shù)的累加,分析條件是否加到131就結(jié)束循環(huán),所以我們要注意初始值的設(shè)置、循環(huán)條件的確定以及循環(huán)體內(nèi)語(yǔ)句的先后順序,三者要有機(jī)地結(jié)合起來(lái).最關(guān)鍵的是循環(huán)條件,它決定循環(huán)次數(shù),可以想一想,為什么條件不是“i<131”或“i=131”,如果是“i<131”,那么會(huì)少執(zhí)行一次循環(huán),131就加不上了. 怎樣才能正確地確定循環(huán)條件呢?初學(xué)者常常在這方面出現(xiàn)問(wèn)題.最“原始”的辦法是自己按照流程順序執(zhí)行一遍,顯然比較麻煩.在實(shí)際操作中我們只需看前2至3次循環(huán)及最后一次即可,通過(guò)前2至3次循環(huán)體的執(zhí)行,可以驗(yàn)證是不是從第一個(gè)數(shù)開始加的,是不是能實(shí)現(xiàn)其中數(shù)的規(guī)律;根據(jù)循環(huán)體內(nèi)語(yǔ)句的順序以及本例用的是當(dāng)型循環(huán),所以最后一次執(zhí)行循環(huán)體時(shí)i的值應(yīng)為131,執(zhí)行完循環(huán)體后i的值變?yōu)?33,這時(shí)就應(yīng)退出循環(huán),不能再加了,因此條件應(yīng)為i≤131或i<133. (3)這樣畫的流程圖不是唯一的,如果把初值改為sum=1,那么應(yīng)在框圖中作怎樣的改動(dòng)才能實(shí)現(xiàn)要求? (4)該程序具有通用性、靈活性,把i≤131改為i≤1 001,可適用于1+3+5+7+…+1 001;把i=i+2改為i=i+1,可實(shí)現(xiàn)1+2+3+4+…+131;把sum=sum+i改為sum=sum×i,則可實(shí)現(xiàn)1×3×5×7×…×131,本例還可作其他的改動(dòng),而得到許多不同的結(jié)果. |
由于需加的數(shù)較多,所以要引入循環(huán)結(jié)構(gòu)來(lái)實(shí)現(xiàn)累加.觀察所加的數(shù)是一組有規(guī)律的數(shù)(每相鄰兩數(shù)相差2),那么可考慮在循環(huán)過(guò)程中,設(shè)一個(gè)變量i,用i=i+2來(lái)實(shí)現(xiàn)這些有規(guī)律的數(shù),設(shè)一個(gè)累加器sum,用來(lái)實(shí)現(xiàn)數(shù)的累加,在執(zhí)行時(shí),每循環(huán)一次,就產(chǎn)生一個(gè)需加的數(shù),然后加到累加器sum中. |
年級(jí) | 高中課程 | 年級(jí) | 初中課程 |
高一 | 高一免費(fèi)課程推薦! | 初一 | 初一免費(fèi)課程推薦! |
高二 | 高二免費(fèi)課程推薦! | 初二 | 初二免費(fèi)課程推薦! |
高三 | 高三免費(fèi)課程推薦! | 初三 | 初三免費(fèi)課程推薦! |
百度致信 - 練習(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