演练一个虚拟演算法.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
演练一个虚拟演算法

* Ch06 問題解決與演算法設計 計畫大型派對的變形範例 如果不確定 “寫下姓名” 怎麼做,可以再往下增加一個如下階層: 如果不打算自己烹飪, 主模組可以改成: * Ch06 問題解決與演算法設計 一個列印通訊錄的電腦範例 需求:建立包含姓名、地址、電話號碼以及電子郵件信箱的地址表單 ,這個表單應該於稍後列印出來,而即將要加入表單的名稱是根據便條紙以及名片而來 * Ch06 問題解決與演算法設計 一個電腦範例 * Ch06 問題解決與演算法設計 一個電腦範例 * Ch06 問題解決與演算法設計 一個電腦範例 插入資訊到表單上 * Ch06 問題解決與演算法設計 方法的總結 分析問題 寫出主模組 不要太粗糙,但也不可太繁瑣 寫出剩餘部分的模組 將每一個模組持續加以細分,直到每個陳述句都是具體步驟為止 如果有必要,重新排好順序並做修改 演算法如有改變,不要害怕,重新再來一遍 * Ch06 問題解決與演算法設計 測試演算法 桌面核對 (desk checking) 在設計過程中我們訂定的演算法就必須在實作它們之前要被測試的過程 演練法 (walk-through) 是一種由團隊成員來共同規劃設計的手工模擬方法 以取樣所得的資料來針對設計實施模擬 檢驗法 (inspection) 程式設計是事先分派工作給團隊中的成員,而當其他人指出有錯誤時,某人 (不是該程式原設計者) 須逐行檢視這個程式設計。 * Ch06 問題解決與演算法設計 6.5 物件導向的設計方法 物件導向設計是一種問題解決的方法,它是以一種稱為物件 (object) 的自含實體 (self-contained entity,意思是由該物件所提供的介面清楚明白,足夠讓外界知道該物件要完成的工作) 來產生問題的解答。 將資料與操作資料的演算法綁在一起即為物件導向的基本觀點。它讓每個物件對自己的操作方式 (行為) 負責。物件導向設計的內在是類別 (class) 與物件 (object) 的概念。 物件 (object) 是一個在問題本文內能顯現意義的事物或實體。 * Ch06 問題解決與演算法設計 物件導向 一群相似的物件是以物件類別 (object class) 或簡稱類別 (class) 來描述它。 類別 (class) 與將物件分類成相關群組並描述它們共同特性的想法有關。 類別描述了存在於類別中該物件的性質與行為。任何特殊物件都是類別的實例 (具體例子)。 類別含有許多表示類別性質與行為的欄位 (field),類別也可以包含資料數值與 (或) 方法 (子程式)。 方法 (method) 則是物件中管理資料、數值的已命名演算法。 第 6.5 節 由p.176 設計方法 到 p. 184 跳過,以後會教 * Ch06 問題解決與演算法設計 6.6 重要的串連思路 資訊隱藏(information hiding) 意即在設計較高層級期間,讓較低層級的細節無法被存取。 延遲細節 為每一工作取名,先不需要擔憂工作後來是如何加以實作 抽象概念與資訊隱藏是一體兩面,表示相同概念 (如同硬幣的兩面) * Ch06 問題解決與演算法設計 重要的串連思路 抽象概念(abstraction) 與資訊隱藏是事物的一體兩面。資訊隱藏是隱藏細節的實踐,而抽象概念則具有細節隱藏的效果。 資料抽象概念 (data abstraction) 與資料的觀點有關;它將資料的邏輯觀點與其實體加以區分。 程序抽象概念 (procedural abstraction) 與動作的觀點有關;它將動作的邏輯觀點與其實體加以區分。 控制抽象概念 (control abstraction)。控制抽象概念與控制結構的觀點有關;它是將控制結構的邏輯觀點與實作方法加以區分。 控制結構 (control structure) 可以讓我們控制改變一個演算法的循序流程,While與 If 都是控制結構。 重要的串連思路 * Ch06 問題解決與演算法設計 * Ch06 問題解決與演算法設計 重要的串連思路 為事物及事件命名(naming things and events) 使用速記法來代表工作與我們所處理的資訊 我們會給資料及過程名稱,這些名稱稱為識別符號 (identifier) 在將演算法轉換成為電腦可以執行的程式語言時,因為每個程式語言都有關於可作為識別符號的特有規則,因此可能需要修改識別符號 例如有些程式語言要求識別符號 的第一個字母必須是英文,有些保留字不能作為識別符號 * Ch06 問題解決與演算法設計 重要的串連思路 程式規劃語言(programming language) 是一種人工語言,它由符號、特殊單字以及一組規則所組成,且被用來建構一個程式 (program) ──也就是說,用來呈現有意義的指令順

文档评论(0)

wangsux + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档