




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第7講 編碼實(shí)現(xiàn),主要內(nèi)容如下: 結(jié)構(gòu)化程序設(shè)計(jì)的工具 結(jié)構(gòu)化程序設(shè)計(jì)的概念和方法,7.1 結(jié)構(gòu)化程序設(shè)計(jì)的工具,)程序框圖 )盒圖 )圖 )判定表與判定樹,1) 程序框圖又稱為程序流程圖,(a)程序注釋;(b)準(zhǔn)備;(c)預(yù)先定義的處理;(d)開始或停止; (e)輸入O出;(f)順序處理;(g)循環(huán)開始;(h)循環(huán)終止; (i)控制流;(j)并行方式;(k)選擇(分支);(l)多分支; (m)連接;(n)換頁連接;,應(yīng)用,直到現(xiàn)在,采用程序框圖的設(shè)計(jì)方法和符號體系進(jìn)行編程設(shè)計(jì)的程序員仍然十分眾多。它的主要優(yōu)點(diǎn)是對程序控制流程的直觀描述,稍做說明則易學(xué)、易懂、易用。,例子:寫一個(gè)函數(shù)計(jì)算當(dāng)參數(shù)
2、為n(n很大)時(shí)的值 1-2+3-4+5-6+7.+n,long fn(long n) long temp=0; int i,flag=1; if(n 0); exit(1); for(i=1;i=n;i+) temp=temp+flag*i; flag=(-1)*flag; return temp; ,例子:寫一個(gè)函數(shù)計(jì)算當(dāng)參數(shù)為n(n很大)時(shí)的值 1-2+3-4+5-6+7.+n,long fn(long n) if(n 0); exit(1); if(0=n%2) return (n/2)*(-1); else return (n/2)*(-1)+n; ,2)盒圖(又稱NS圖),(a)順
3、序處理; (b)IF_THEN_ELSE型選擇; (c)CASE型多分支選擇; (d)循環(huán); (e)調(diào)用子程序A,應(yīng)用,盒圖較好地表現(xiàn)了結(jié)構(gòu)化過程設(shè)計(jì)的思想: 1、特定控制結(jié)構(gòu)的作用域很明確。 2、編碼時(shí)除非故意而為,否則不可能任意轉(zhuǎn)移控制。 3、很容易確定局部和全程數(shù)據(jù)的作用域,彌補(bǔ)了程序框圖的不足。 4、通常,一個(gè)60行以下的程序,可以很直觀地表現(xiàn)為“積木”式的盒圖。,3)、PAD圖,(a)順序處理A、B、C; (b) Do While X 型循環(huán); (c)預(yù)Do Until X型循環(huán); (d)選擇(If X Then A Else B); (e)Case型多分支; (f )語句標(biāo)號; (
4、g ) 定義;,應(yīng)用,PAD圖具有以下特點(diǎn): 1、PAD圖中“豎線”使得程序的結(jié)構(gòu)十分清晰。 2、使用PAD符號所設(shè)計(jì)出來的程序必然是結(jié)構(gòu)化的程序。 3、PAD圖的符號體系符合使用自頂向下、逐步求精的設(shè)計(jì)方法。對應(yīng)的文檔,也可以很好地伴隨整個(gè)工程過程,如把“定義”完全單獨(dú)編寫頁腳、替換下來的部分可以留做備忘等等。 4、自上而下,從左向右順序執(zhí)行,遍歷所有結(jié)點(diǎn)。 5、很容易將PAD圖轉(zhuǎn)換成高級語言源程序,甚至可用軟件工具自動完成,從而可省去人工編碼的工作,有利于提高軟件可靠性和軟件生產(chǎn)率。,4) 判定表與判定樹,判定表,先選定一個(gè)條件,分成取真、假兩種邏輯值的情況下,進(jìn)一步描述其他條件取真、假兩
5、種邏輯值的情況,如此這般的遍歷所有條件,指出程序?qū)⒁獔?zhí)行的動作。,判定樹,應(yīng)用,判定表沒有判定樹直觀,但簡捷性方面可能判定表更好一些;在具體問題中,判定表或判定樹的分枝整理次序之先后,通常會對結(jié)果的簡捷程度有影響很大。,程序框圖(流程圖)詳細(xì)、簡約、無歧義地描述了每個(gè)模塊功能的邏輯。 在軟件開發(fā)過程中的其它階段,人們通常用界面要求、術(shù)語表、數(shù)據(jù)流圖、模塊層次圖、模塊的IPO文檔等等文檔方法來溝通目標(biāo)需求和設(shè)計(jì)思想;在詳細(xì)設(shè)計(jì)階段,這些“制品”雖然經(jīng)常被使用,但是,在“無歧義”的意義上,它們往往會因人而異;顯然,程序框圖是項(xiàng)目最后的技術(shù)性設(shè)計(jì)方案,代碼編寫將嚴(yán)格根據(jù)它來進(jìn)行。 程序框圖(與IPO
6、文檔相結(jié)合)是詳細(xì)設(shè)計(jì)階段的主要產(chǎn)品之一。,)程序設(shè)計(jì)工具的作用,6)PAD圖的一個(gè)簡單應(yīng)用示例,7.2 詳細(xì)程序設(shè)計(jì)的概念,7.3 結(jié)構(gòu)化程序設(shè)計(jì)的概念和方法,面向?qū)ο?、結(jié)構(gòu)化程序設(shè)計(jì) 概念經(jīng)典的結(jié)構(gòu)化設(shè)計(jì),一個(gè)程序的代碼塊僅僅通過順序、選擇和循環(huán)這三種控制結(jié)構(gòu)進(jìn)行連接,并且每個(gè)代碼塊只有一個(gè)入口和一個(gè)出口,則稱這個(gè)程序是結(jié)構(gòu)化的。,把除使用上述三種基本控制結(jié)構(gòu)之外,還使用DO_CASE型多分支結(jié)構(gòu)和DOUNTIL型循環(huán)結(jié)構(gòu)的設(shè)計(jì)方法,稱作擴(kuò)展的結(jié)構(gòu)化設(shè)計(jì) 。 把允許使用Break(或leave)結(jié)構(gòu)的設(shè)計(jì)方法,稱為修正的結(jié)構(gòu)化設(shè)計(jì)。,取消GO TO語句;程序的質(zhì)量與程序中所包含的GO TO
7、語句的數(shù)量成反比。 1966年Bohm和Jacopini證明了只用三種基本的控制結(jié)構(gòu)就能實(shí)現(xiàn)任何單入口/單出口的程序。,編程風(fēng)格方面,7.4 詳細(xì)程序設(shè)計(jì)的應(yīng)用,由于軟件系統(tǒng)規(guī)??赡芎艽?,各類算法中含有許多常見的、慣例性的同類邏輯算法,受到工程期限、工程成本的制約,從具體的團(tuán)隊(duì)人力資源配置情況出發(fā),編碼過程中對各個(gè)部分的“詳細(xì)設(shè)計(jì)” 并不是不作分辨地、一律地進(jìn)行,而是針對較復(fù)雜的、可能有爭議的或有變更的算法(接口)、核心模塊進(jìn)行。,對核心模塊有所側(cè)重,對于工程管理者來說,應(yīng)該熟練掌握結(jié)構(gòu)化設(shè)計(jì)技術(shù),其重要性遠(yuǎn)遠(yuǎn)超過具體的編程技術(shù); 對于軟件團(tuán)隊(duì)成員來說,掌握規(guī)范的結(jié)構(gòu)化設(shè)計(jì)技術(shù)則成為與工程管理者和團(tuán)隊(duì)其他成員之間準(zhǔn)確溝通的基本技能,同樣十分重要; 團(tuán)隊(duì)成員之間沒
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)新型離婚協(xié)議:婚姻解除與財(cái)產(chǎn)分配協(xié)議
- 房地產(chǎn)代償權(quán)轉(zhuǎn)讓合同模板
- 文化創(chuàng)意產(chǎn)業(yè)合作合同知識產(chǎn)權(quán)使用授權(quán)補(bǔ)充協(xié)議
- 銀行遷址開業(yè)宣傳方案
- 培訓(xùn)項(xiàng)目外包方案模板
- 青島中考試題及答案
- 拆遷評估工作方案
- 天津社工面試題及答案
- 小區(qū)搬運(yùn)業(yè)務(wù)方案
- 在線遴選面試題及答案
- 2022年高校教師資格證考試題庫高分通關(guān)300題a4版(浙江省專用)
- 強(qiáng)規(guī)劃助成長學(xué)課件-心理教師如何幫助學(xué)生提升職業(yè)規(guī)劃能力
- 冷凍消融設(shè)備(CQZ2100618)
- 慢性乙型病毒性肝炎防治
- QC七大手法培訓(xùn)教材(ppt50張PPT)課件
- 柴油錘擊樁施工方案完整
- 物業(yè)服務(wù)中心架構(gòu)圖
- 表面滲納米陶瓷的摩托車活塞環(huán)的介紹
- 高一數(shù)學(xué)知識點(diǎn)總結(jié)
- 倉庫職位等級晉升標(biāo)準(zhǔn)評價(jià)表
- 防腐保溫工程--危險(xiǎn)源辨識風(fēng)險(xiǎn)評價(jià)表(共1頁)
評論
0/150
提交評論