官术网_书友最值得收藏!

1.4.1 偽代碼

解決特定問題的好方法是先從設計程序開始,以便識別出程序要完成的主要任務。在設計程序時,每個任務是一個程序模塊,然后根據需要可以將這些基本的“高層”任務分解為子任務,后者稱為原來或父模塊的子模塊。有些子模塊可能又被分解為自己的子模塊,而且這個分解過程可以一直繼續下去直到滿足解決問題的需要。這種將問題分解為越來越簡單子問題的過程稱為自頂向下設計。在程序設計中識別任務和各種不同子任務稱為模塊化程序設計

一旦識別出程序需要完成的各種不同任務,就必須制訂程序設計的細節。對于每個模塊,必須提供執行任務的特定指令,此時可以使用偽代碼

如例1.9所示,偽代碼使用短的、類似英語的短語描述程序的大綱。它不是任何特定程序設計語言的實際代碼,但是有時與實際代碼非常相似。基于自頂向下程序設計思想,我們通常先為每個模塊提供一個粗略的偽代碼大綱,然后細化偽代碼以提供越來越多的細節。依賴程序模塊的復雜度,有時對最初的偽代碼很少或不需細化,但有時需要細化幾個版本,每次添加一些細節直到能夠將它明確地轉換為實際的代碼。

例1.9 使用偽代碼設計程序 想要編寫一個計算客戶購買費用的程序,這個商店為所有商品提供20%的折扣率,支付6.5%銷售稅,而且當銷售額低于$100.00時要支付運費$5.00,若高于$100.00則免除運費。

程序似乎需要多個模塊。一個模塊計算所有購買商品的費用,應用20%的折扣率;一個模塊是如果購買總額少于$100.00則要加上運費$5.00,否則不計運費;一個模塊計算銷售稅并加入之前計算的費用;最后,應該輸出結果。

我們將在后面學習如何編制這個程序,現在只使用偽代碼就能夠立刻設計這個程序,類似于如下所示:

當然,你寫的偽代碼可能不同于這個偽代碼。但是不管你具體是如何寫的,程序的邏輯和必需的計算應該是相同的。

主站蜘蛛池模板: 搜索| 巴彦淖尔市| 合作市| 阿拉尔市| 修文县| 昆山市| 渑池县| 山阳县| 临西县| 卓资县| 大石桥市| 安陆市| 潜江市| 栾川县| 龙岩市| 江西省| 新野县| 绵阳市| 阳江市| 鹤壁市| 遂平县| 揭东县| 资中县| 奈曼旗| 祥云县| 蓬溪县| 辽源市| 大连市| 东乌| 阜宁县| 平凉市| 博白县| 张家港市| 顺义区| 利辛县| 陆良县| 哈巴河县| 长垣县| 都江堰市| 平定县| 孟津县|