




已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1 1 2程序框圖與算法的基本邏輯結(jié)構(gòu) 任意給定一個(gè)大于2的整數(shù)n 試設(shè)計(jì)一個(gè)程序或步驟對n是否為質(zhì)數(shù)做出判定 算法分析 從上節(jié)課我們知道 算法可以用自然語言來描述 第一步 給定大于2的整數(shù)n第二步 令i 2第三步 用i除n 得到余數(shù)r第四步 判斷 r 0 是否成立 若是 則n不是質(zhì)數(shù) 結(jié)束算法 否則令i i 1第五步 判斷 i n 1 是否成立 若是 則n是質(zhì)數(shù) 結(jié)束算法 否則返回第三步 設(shè)n是一個(gè)大于2的整數(shù) 一般用i i 1表示 開始 輸入n i 2 求n除以i的余數(shù)r i i 1 i n 1或r 0 結(jié)束 是 否 是 否 r 0 輸出 n不是質(zhì)數(shù) 輸出 n是質(zhì)數(shù) 思考 通過上述算法的兩種不同表達(dá)方式的比較 你覺得用程序框圖來表達(dá)算法有哪些特點(diǎn) 用程序框圖表示的算法更加簡練 直觀 流向清楚 程序框圖又稱流程圖 是一種用程序框 流程線及文字說明來準(zhǔn)確 直觀地表示算法的圖形 一個(gè)或幾個(gè)程序框的組合表示算法中的一個(gè)步驟 帶有方向箭頭的流程線將程序框連接起來 表示算法步驟的執(zhí)行順序 基本的程序框和它們各自表示的功能如下 終端框 起止框 表示一個(gè)算法的起始和結(jié)束 輸入 輸出框 表示一個(gè)算法輸入和輸出的信息 處理框 執(zhí)行框 判斷某一條件是否成立 成立時(shí)在出口處標(biāo)明 是 或 y 不 成立時(shí)標(biāo)明 否 或 n 判斷框 賦值 計(jì)算 流程線 連接程序框 連接點(diǎn) 連接程序框圖的兩部分 開始 輸入n i 2 求n除以i的余數(shù)r i i 1 i n 1或r 0 結(jié)束 是 否 是 否 r 0 順序結(jié)構(gòu) 用程序框圖來表示算法 有三種不同的基本邏輯結(jié)構(gòu) 條件結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 輸出 n不是質(zhì)數(shù) 輸出 n是質(zhì)數(shù) 程序框圖的三種基本的邏輯結(jié)構(gòu) 順序結(jié)構(gòu) 條件結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 1 順序結(jié)構(gòu) 是由若干個(gè)依次執(zhí)行的處理步驟組成的 這是任何一個(gè)算法都離不開的基本結(jié)構(gòu) 例1 已知一個(gè)三角形的三邊邊長分別為a b c 利用海倫 秦九韶公式設(shè)計(jì)一個(gè)算法 求出它的面積 畫出算法的程序框圖 例1 已知一個(gè)三角形的三邊邊長分別為a b c 利用海倫 秦九韶公式設(shè)計(jì)一個(gè)算法 求出它的面積 畫出算法的程序框圖 算法分析 第二步 計(jì)算p的值 第三步 由海倫 秦九韶公式求出三角形的面積s 第四步 輸出s的值 第一步 輸入三角形三條邊的邊長a b c 畫出 已知三角形的三邊長a b c 求它的面積的程序框圖 開始 輸出s 結(jié)束 輸入a b c 2 條件結(jié)構(gòu) 在一個(gè)算法中 經(jīng)常會遇到一些條件的判斷 算法的流向根據(jù)條件是否成立有不同的流向 條件結(jié)構(gòu)就是處理這種過程的結(jié)構(gòu) 例2 任意給定3個(gè)正實(shí)數(shù) 設(shè)計(jì)一個(gè)算法 判斷分別以這3個(gè)數(shù)為三邊邊長的三角形是否存在 畫出這個(gè)算法的程序框圖 算法分析 第一步 輸入3個(gè)正實(shí)數(shù)a b c 第二步 判斷a b c a c b b c a是否同時(shí)成立 若是 則能組成三角形 若否 則組不成三角形 程序框圖 開始 輸入a b c a b c a c b b c a是否同時(shí)成立 是 存在這樣的三角形 不存在這樣的三角形 否 結(jié)束 例3 畫程序框圖 對于輸入的x值 輸出相應(yīng)的y值 開始 程序框圖 x 0 是 y 0 否 0 x 1 是 y 1 否 y x 輸出y 結(jié)束 輸入x 算法步驟如下 開始 輸入a b c x1 p q x2 p q 輸出x1 x2 輸出 方程沒有實(shí)數(shù)根 輸出p 結(jié)束 否 是 否 是 是 練習(xí)2 設(shè)計(jì)一個(gè)求任意數(shù)的絕對值的算法 并畫出程序框圖 算法分析 第一步 輸入數(shù)x 第二步 判斷x 0是否成立 若是 則 x x 若否 則 x x 程序框圖 開始 輸入x x 0 輸出x 否 輸出 x 結(jié)束 3 循環(huán)結(jié)構(gòu) 在一些算法中 也經(jīng)常會出現(xiàn)從某處開始 按照一定條件 反復(fù)執(zhí)行某一步驟的情況 這就是循環(huán)結(jié)構(gòu) 反復(fù)執(zhí)行的步驟稱為循環(huán)體 注意 循環(huán)結(jié)構(gòu)不能是永無終止的 死循環(huán) 一定要在某個(gè)條件下終止循環(huán) 這就需要條件結(jié)構(gòu)來作出判斷 因此 循環(huán)結(jié)構(gòu)中一定包含條件結(jié)構(gòu) 例5 設(shè)計(jì)一個(gè)計(jì)算1 2 3 100的值的算法 并畫出程序框圖 算法分析 第1步 0 1 1 第2步 1 2 3 第3步 3 3 6 第4步 6 4 10 第100步 4950 100 5050 第 i 1 步的結(jié)果 i 第i步的結(jié)果 各步驟有共同的結(jié)構(gòu) 為了方便有效地表示上述過程 我們引進(jìn)一個(gè)累加變量s來表示每一步的計(jì)算結(jié)果 從而把第i步表示為s s i s的初始值為0 i依次取1 2 100 由于i同時(shí)記錄了循環(huán)的次數(shù) 所以i稱為計(jì)數(shù)變量 程序框圖 開始 i 1 s 0 s s i i i 1 i 100 是 輸出s 結(jié)束 否 直到型循環(huán)結(jié)構(gòu) 開始 i 1 s 0 i 100 是 s s i i i 1 否 輸出s 結(jié)束 當(dāng)型循環(huán)結(jié)構(gòu) 說明 1 一般地 循環(huán)結(jié)構(gòu)中都有一個(gè)計(jì)數(shù)變量和累加變量 計(jì)數(shù)變量用于記錄循環(huán)次數(shù) 同時(shí)它的取值還用于判斷循環(huán)是否終止 累加變量用于輸出結(jié)果 累加變量和計(jì)數(shù)變量一般是同步執(zhí)行的 累加一次 記數(shù)一次 2 循環(huán)結(jié)構(gòu)分為兩種 當(dāng)型和直到型 當(dāng)型循環(huán)在每次執(zhí)行循環(huán)體前 條件進(jìn)行判斷 當(dāng)條件滿足時(shí) 執(zhí)行循環(huán)體 否則終止循環(huán) 當(dāng)條件滿足時(shí)反復(fù)執(zhí)行循環(huán)體 直到型循環(huán)在執(zhí)行了一次循環(huán)體之后 對條件進(jìn)行判斷 如果條件不滿足 就繼續(xù)執(zhí)行循環(huán)體 直到條件滿足時(shí)終止循環(huán) 反復(fù)執(zhí)行循環(huán)體 直到條件滿足終止循環(huán) 程序框圖 開始 i 1 s 0 s s i i i 1 i 100 是 輸出s 結(jié)束 否 直到型循環(huán)結(jié)構(gòu) 開始 i 1 s 0 i 100 是 s s i i i 1 否 輸出s 結(jié)束 當(dāng)型循環(huán)結(jié)構(gòu) 探究 畫出用二分法求方程x2 2 0 x 0 的近似根的程序框圖 算法分析 第一步 令f x x2 2 給定精確度 第二步 確定a b 使得f a f b 0 第三步 令 第五步 判斷 a b 或f m 0是否成立 若是 則m為滿足條件的近似根 否則 則返回第三步 是 是 否 程序框圖 開始 f x x2 2 輸入誤差 和初值a b a m 否 b m a b 或f m 0 輸出m 結(jié)束 設(shè)計(jì)一個(gè)算法 判斷一個(gè)正的n n 2 位數(shù)是不是回文數(shù) 用自然語言描述算法步驟 算法步驟 第一步 輸入一個(gè)正整數(shù)x和它的位數(shù) 第二步 判斷n是不是偶數(shù) 如果是偶數(shù) 令m n 2 如果是奇數(shù) 令m n 1 2 第三步 當(dāng)i從1取到m值時(shí) 依次判斷x的第i位與第 n 1 i 位上的數(shù)字是不是相等 如果都相等 則x是回文數(shù) 否則 x不是回文數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 媒介合作及勞務(wù)合同
- 苗木短期交易協(xié)議設(shè)計(jì)
- 塑料件的種類與識別陳勇課件
- 新都管道封堵施工方案
- 鐵路工程安全技術(shù)石家莊鐵路93課件
- 鐵路旅客服務(wù)心理鐵路旅客運(yùn)輸服務(wù)課件
- 中國書法課件
- 中華八大文化課件
- 大學(xué)生職業(yè)規(guī)劃大賽《電子與計(jì)算機(jī)工程專業(yè)》生涯發(fā)展展示
- 東坡文化課件圖片
- 諾如病毒感染診斷和治療
- 卡壓不銹鋼管的施工組織方案
- 2022山東大學(xué)出版社校園招聘16人上岸筆試歷年難、易錯(cuò)點(diǎn)考題附帶參考答案與詳解
- 10kV環(huán)網(wǎng)柜技術(shù)規(guī)范書
- 試劑售后承諾書
- 小學(xué)校本課程-生活中的陌生人教學(xué)課件設(shè)計(jì)
- 榆陽區(qū)可可蓋煤礦礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
- 滬教版三年級下冊數(shù)學(xué)第二單元 用兩位數(shù)乘除 測試卷及參考答案【培優(yōu)a卷】
- 中小型病理技術(shù)團(tuán)隊(duì)崗位設(shè)置及績效分配現(xiàn)狀分析
- 防護(hù)棚驗(yàn)收表
- 磁粉檢測試題庫
評論
0/150
提交評論