app程序的設(shè)計(jì)的方法_第1頁(yè)
app程序的設(shè)計(jì)的方法_第2頁(yè)
app程序的設(shè)計(jì)的方法_第3頁(yè)
app程序的設(shè)計(jì)的方法_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 程序設(shè)計(jì)的方法1.模塊化:(1) 把一個(gè)較大的程序劃分為若干子程序,每一個(gè)子程序解決一個(gè)總是獨(dú)立成為一個(gè)模塊;(2) 每一個(gè)模塊又可繼續(xù)劃分為更小的子模塊;(3) 程序具有一種層次結(jié)構(gòu)。注:運(yùn)用這種編程方法,考慮問(wèn)題必須先進(jìn)行整體分析,避免邊寫(xiě)邊想。2.自頂向下:(1) 先設(shè)計(jì)第一層(即:頂層),然后步步深入,逐層細(xì)分,逐步求精,直到整個(gè)問(wèn)題可用程序設(shè)計(jì)語(yǔ)言明確地描述出來(lái)為止。(2) 步驟: 首先對(duì)問(wèn)題進(jìn)行仔細(xì)分析,確定其輸入、輸出數(shù)據(jù),寫(xiě)出程序運(yùn)行的主要過(guò)程和任務(wù); 然后從大的功能方面把一個(gè)問(wèn)題的解決過(guò)程分成幾個(gè)問(wèn)題,每個(gè)子問(wèn)題形成一個(gè)模塊。 (3) 特點(diǎn):先整體后局部,先抽象后具體。3.

2、自底向上:(1) 即先設(shè)計(jì)底層,最后設(shè)計(jì)頂層;(2) 優(yōu)點(diǎn):由表與里、由淺入深地解決問(wèn)題; (3) 不足:在逐步細(xì)化的過(guò)程中可能發(fā)現(xiàn)原來(lái)的分解細(xì)化不夠完善;(4) 注意:該方法主要用于修改、優(yōu)化或擴(kuò)充一個(gè)程序。4.例子:求1到n之間的素?cái)?shù)。解:要求1到n之間的素?cái)?shù),程序要做的事就是從1開(kāi)始依次找,判斷是否是素?cái)?shù),是則打印出來(lái),否則繼續(xù)往下找,直到n為止。于是初步設(shè)想成:beginread(n);number:=2;while numbern do beginif number是一個(gè)素?cái)?shù) then write(number); number取下一個(gè)值;endend.第二步:細(xì)化“number是一

3、個(gè)素?cái)?shù)”與“number取下一個(gè)值”。 (1) 細(xì)化“number是一個(gè)素?cái)?shù)”:“number是一個(gè)素?cái)?shù)”這是一個(gè)布爾值,當(dāng)number是一個(gè)素?cái)?shù)時(shí)為true,否則為false。細(xì)化如下:k:=2;lim:=number-1; repeat if nubmer能被k整除 then prim:=falseelse begink:=k+1;prim:=true;end;until not(prim) or (k達(dá)到lim);(2) 細(xì)化“number取下一個(gè)值”:number:=number+1;第三步:細(xì)化“number能被k整除”與“k達(dá)到lim”。(1) 細(xì)化“number能被k整除”: n

4、umber mod k=0;(2) 細(xì)化“k達(dá)到lim”:k<=lim;第四步:補(bǔ)充完整程序。第五步:從所有的素?cái)?shù)除了2之外都是奇數(shù)的角度出發(fā)優(yōu)化程序。程序設(shè)計(jì)步驟:1.分析問(wèn)題:對(duì)要解決的問(wèn)題,首先必須分析清楚,明確題目的要求,列出所有已知量,找出題目的求解圍、解的精度等。例“第10周練習(xí)”第7題兔子的繁殖問(wèn)題,必須找出其繁殖規(guī)律。2.建立數(shù)學(xué)模型: 對(duì)實(shí)際問(wèn)題進(jìn)行分析之后,找出它的在規(guī)律,就可以建立數(shù)學(xué)模型。只有建立了模型的問(wèn)題,才能可能利用計(jì)算機(jī)來(lái)解決。如上例,可推出遞推公式un=un-1+un-2(這是菲波那契數(shù)列)3.選擇算法:建立數(shù)學(xué)模型后,還不能著手編程序,必須根據(jù)數(shù)據(jù)結(jié)構(gòu)

5、,解決問(wèn)題的算法。一般選擇算法要注意:(1) 算法的邏輯結(jié)構(gòu)盡可能簡(jiǎn)單;(2) 算法所要求的存貯量應(yīng)盡可能少;(3) 避免不必要的循環(huán),減少算法的執(zhí)行時(shí)間;(4) 在滿足題目條件要求下,使所需的計(jì)算量最小。4.編寫(xiě)程序: 把整個(gè)程序看作一個(gè)整體,先全局后局部,自頂向下,一層一層分解處理,如果某些子問(wèn)題的算法一樣而僅參數(shù)不同,可以用子程序來(lái)表示。5.調(diào)試運(yùn)行;6.分析結(jié)果;7.寫(xiě)出程序的文檔:主要是對(duì)程序中的變量、函數(shù)或過(guò)程作必要的說(shuō)明,解釋編程思路,畫(huà)出框圖,討論運(yùn)行結(jié)果等。返回上頁(yè)4 / 41. 若不給自己設(shè)限,則人生中就沒(méi)有限制你發(fā)揮的藩籬。2. 若不是心寬似海,哪有人生風(fēng)平浪靜。在紛雜的塵世里,為自己留下一片純靜的心靈空間,不管是潮起潮落,也不管是陰晴圓缺,你都可以免去浮躁,義無(wú)反顧,勇往直前,輕松自如地走好人生路上的每一步3. 花一些時(shí)間,總會(huì)看清一些事。用一些事情,總會(huì)看清一些人。有時(shí)候覺(jué)得自己像個(gè)神經(jīng)病。既糾結(jié)了自己,又打擾了別人。努力過(guò)后,才知道許多事情,堅(jiān)持堅(jiān)持,就過(guò)來(lái)了。4. 歲月是無(wú)情的,假如你丟給它的是一片空白,它還給你的也是一片空白。歲月是有情的,假如

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論