RAPTOR程序設(shè)計教程.ppt_第1頁
RAPTOR程序設(shè)計教程.ppt_第2頁
RAPTOR程序設(shè)計教程.ppt_第3頁
RAPTOR程序設(shè)計教程.ppt_第4頁
RAPTOR程序設(shè)計教程.ppt_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、RAPTOR程序設(shè)計基礎(chǔ),可視化計算,1,學習目標,為什么學習RAPTOR系統(tǒng)? RAPTOR程序設(shè)計環(huán)境有那些基本概念? 如何使用程序設(shè)計進行計算問題的求解?,2,為什么要學習RAPTOR?,RAPTOR(the Rapid Algorithmic Prototyping Tool for Ordered Reasoning-用于有序推理的快速算法原型工具),是一種基于流程圖仿真的可視化的程序設(shè)計環(huán)境,為程序和算法設(shè)計的基礎(chǔ)課程的教學提供實驗環(huán)境 使用RAPTOR設(shè)計的程序和算法可以直接轉(zhuǎn)換成為C+、C#、Java等高級程序語言,這就為程序和算法的初學者鋪就了一條平緩、自然的學習階梯,3,使

2、用RAPTOR的理由,可以在最大限度地減少語法要求的情形下,幫助用戶編寫正確的程序指令 程序就是流程圖,可以逐個執(zhí)行圖形符號,以便幫助用戶跟蹤指令流執(zhí)行過程 容易掌握 用RAPTOR可以進行算法設(shè)計和驗證,從而使初學者有可能理解和真正掌握“計算思維”,4,RAPTOR基本程序環(huán)境,基本界面,5,四種基本符號/語句,6,變量,變量(variable)表示的是計算機內(nèi)存中的位置,用于保存數(shù)據(jù)值 在任何時候,一個變量只能容納一個值 在程序執(zhí)行過程中,變量的值可以改變 命名:以字母開頭,由字母、數(shù)字、下劃線組成,7,變量賦值過程,8,RAPTOR變量值的設(shè)置,基本原則: 任何變量在被引用前必須存在并被

3、賦值 變量的類型由最初的賦值語句所給的數(shù)據(jù)決定 設(shè)置方法 通過輸入語句賦值 通過賦值語句的中的公式運算后賦值 通過調(diào)用過程的返回值賦值,9,RAPTOR數(shù)據(jù)類型,數(shù)值(Number): 如12,567,-4,3.1415,0.000371 字符串 (String): 如“Hello, how are you?”, “James Bond”, “The value of x is: ” 注意:本系統(tǒng)不能使用漢字字符!,10,變量報錯的原因,未定義引用,11,變量報錯的原因,拼寫錯,12,不同類型的數(shù)據(jù)不可比較,13,RAPTOR常量,RAPTOR定義了四個常量(Constant) 下列四個符號取

4、值為固定值,不可更改,只能引用 pi(圓周率) 定義為 3.1416 e (自然對數(shù)的底)定義為 2.7183 true /yes(布爾值: 真) 定義為 1 false/no(布爾值:假) 定義為 0,14,給程序增加語句符號,在“start”和“End”之間的箭頭上點鼠標右鍵,在快捷菜單可以添加語句符號。,15,輸入(Input)語句,輸入語句的編輯(Edit)對話框 提示部分 變量部分,16,輸入(Input)語句,輸入語句在流程圖中顯示的狀態(tài) 運行時對話框,17,輸出語句,執(zhí)行輸出語句將在主控(Master Console)窗口顯示輸出結(jié)果 輸出的結(jié)果可以使用或不使用換行操作 其中Th

5、e Number Is:是輸出語句的提示部分,為文本型數(shù)據(jù)兩端加雙引號,+ 表示連接后面的內(nèi)容,n 兩端無雙引號表示它是一個變量。End current line 選中表示下一個輸出語句將另起一行。注意:提示部分文字只能用英文,不支持漢字。,18,輸出語句,運行程序,點擊工具欄的 在輸入框輸入數(shù)字:5 輸出結(jié)果出現(xiàn)在主控窗口。,19,賦值語句(編輯),在輸入語句和輸出語句之間插入賦值符號,雙擊 Set部分為接受賦值的變量或 To部分為表達式,20,賦值語句(顯示),流程圖中的賦值語句,21,表達式,可以是任何計算單個值的簡單或復雜公式 是值(無論是常量或變量)和運算符的組合。 例如,考慮下面的

6、兩個例子:(1)x (3+9)/3(2)x 3+(9/3),22,內(nèi)置運算符和函數(shù),數(shù)學運算: +,-,*,/,*(加、減、乘、除、乘方) rem, mod(求余),sqrt(開平方) log, abs, (對數(shù),絕對值) ceiling, floor (向下取整,向上取整),23,內(nèi)置運算符和函數(shù),三角函數(shù): sin,cos,tan;正弦 ,余弦 ,正切 cot,arcsin,arccos;余切 ,反正弦 ,反余弦 arctan, arccot;反正切 ,反余切,24,內(nèi)置運算符和函數(shù),random,偽隨機數(shù) Length_of 求數(shù)組元素個數(shù),求字符串長度,25,表達式計算的“優(yōu)先順序”,

7、1.計算所有函數(shù)的值; 2.計算括號中表達式; 3.計算乘冪(,*); 4.從左到右,計算乘法和除法,最后從左到右,計算加法和減法。,26,注釋,注釋本身對計算機毫無意義,并不會被執(zhí)行。注釋的目的是增強程序的可讀性,幫助他人理解你所設(shè)計的程序或算法,27,一個帶注釋的算法,注釋的四種類型: 1.編程標題 2.分節(jié)描述 3.邏輯描述 4.變量說明,28,選擇控制,29,當程序執(zhí)行時,如果決策的結(jié)果是“Yes”(True),則執(zhí)行左側(cè)分支 如果結(jié)果是“No”(False),則執(zhí)行右側(cè)分支,選擇控制,注意選擇控制語句的兩個路徑之一可能是空的,或包含多條語句 選擇控制結(jié)構(gòu)在英語環(huán)境中被稱為“if-th

8、en”結(jié)構(gòu),30,決策表達式,決策表達式(Decision Expressions)是一組值(常量或變量)和關(guān)系運算符的結(jié)合, 期望得到Y(jié)ES/NO這樣的結(jié)果 關(guān)系運算符(=、 / =、 、 =),必須針對兩個相同的數(shù)據(jù)類型值比較 例如,3 = 4或Wayne = Sam是有效的比較,但3 = Mike則是無效的,31,決策表達式中的運算符說明,32,級聯(lián)(嵌套)選擇控制,33,在選擇結(jié)構(gòu)里面插入選擇結(jié)構(gòu),循環(huán)控制,循環(huán)(loop)控制語句允許重復執(zhí)行一個或多個語句,直到某些條件變?yōu)檎嬷担═rue) 菱形符號中的表達式結(jié)果為“No”,則執(zhí)行“No”的分支,這將導致循環(huán)語句和重復 要重復執(zhí)行的語

9、句可以放在菱形符號上方或下方 循環(huán)控制結(jié)構(gòu)在英語環(huán)境中被稱為“While-do”結(jié)構(gòu),34,循環(huán)測試,在循環(huán)語句中,究竟是先計算后測試,還是先測試后計算,或者在計算的過程中間進行測試? 前序測試(Pre-test) 后續(xù)測試(Post-test) 中序測試(Intermediate-test),35,刪除圖的Statement 2 Statement1為前置條件 Statement 3是主循環(huán)體 如果進入了Statement3,測試條件也必須由這一部分進行修改;,前序測試,36,中序測試,Statement2是主循環(huán)體之一 而測試條件也是在Statement 2中產(chǎn)生 Statement3是主

10、循環(huán)體之二,37,后續(xù)測試,刪除和Statement3 Statement2是主循環(huán)體 而測試條件也是在Statement 2中產(chǎn)生;,38,輸入驗證循環(huán)之一,39,中序測試,輸入驗證循環(huán)之二,40,計數(shù)循環(huán),循環(huán)按特定的次數(shù),來執(zhí)行某個代碼塊 一個著名的縮寫 I.T.E.M (Initialize, Test, Execute, Modify,初始化,測試,執(zhí)行,和修改)表示可以用來檢查一個循環(huán)計數(shù)器變量使用是否正確的基本過程,41,典型的循環(huán)錯誤,42,計數(shù)控制循環(huán)之一,43,前序測試,計數(shù)控制循環(huán)之二,44,后序測試,RAPTOR子程序與子圖定義與調(diào)用,在計算機科學中,將實際問題抽象化是

11、解決問題的關(guān)鍵要素之一 一項研究成果表明,人類的大腦平均只能同時積極關(guān)注約4件事情,大大少于以往研究所得的7件事情的結(jié)論 為了解決復雜的問題,必須能夠研究問題的“主要方面(big issues)”,45,組合數(shù)求解,很容易看到,求組合數(shù)需要多次求階乘,這會造成許多重復的代碼,現(xiàn)在將求階乘代碼獨立出主程序,定義為一個子程序,在主程序運行時,需要計算某數(shù)的階乘時就調(diào)用子程序,從而簡化整個軟件的組成,使結(jié)構(gòu)更清晰。,46,47,創(chuàng)建RAPTOR子程序,子程序如同一個加工廠,輸入原材料,然后按設(shè)計要求處理原材料,輸出產(chǎn)成品 子程序的原材料就是一些變量,例如(in:char),為統(tǒng)計子程序輸入測試樣本 子程序的產(chǎn)成品也是變量,例如(out: count),向調(diào)用它的程序返回統(tǒng)計結(jié)果 其中,in, out表示子程序的輸入輸出參數(shù),48,子程序定義,子程序定義界面上的接口參數(shù)稱為“形式參數(shù)” RAPTOR的子程序參數(shù)不得超過6個 子程序參數(shù)可以是單個變量,也可以是數(shù)組,49,一個設(shè)計完成的子程序,50,過程調(diào)用語句(編輯),編輯對話

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論