




已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
初試身手,體驗(yàn)編程,如何用計(jì)算機(jī)解決問(wèn)題,胡阿提,第一章 如何用計(jì)算機(jī)解決問(wèn)題 第二節(jié) 算法描述與設(shè)計(jì),為了能更好地理解什么是算法,我們利用日常生活中的“打電話” 的例子來(lái)討論。,“打電話” 的過(guò)程。,拿 起 聽(tīng) 筒,撥 號(hào),打不通,通了,把聽(tīng)筒放下,通話,結(jié)束,把聽(tīng)筒放下,等會(huì)兒再撥,無(wú)人接聽(tīng),把聽(tīng)筒放下,等會(huì)兒再撥,第一章 如何用計(jì)算機(jī)解決問(wèn)題,算法的概念:,解決問(wèn)題的方法和步驟就是算法。,算法可以用多種方法來(lái)描述,1、用自然語(yǔ)言來(lái)描述。 2、用流程圖來(lái)描述。 3、用偽代碼描述算法。,自然語(yǔ)言的優(yōu)點(diǎn):通俗易懂。 缺點(diǎn):容易產(chǎn)生歧義。,例如:,“這個(gè)人連老張也不認(rèn)識(shí)”。,意思之一:這個(gè)人不認(rèn)識(shí)老張。 意思之二:老張不認(rèn)識(shí)這個(gè)人。,2、用流程圖來(lái)描述。,什么是流程圖?(也稱程序框圖)它是算法的一種圖形化表示方法。,認(rèn)識(shí)流程圖符號(hào),流程圖的特點(diǎn):,與自然語(yǔ)言相比,用流程圖描述算法形象、直觀,更容易理解。,2)例如,判斷一個(gè)四位數(shù)的年份是否為閏年。 算法分析: 我們知道,如果2月是28天,則這一年是平年;如果是29天,則這一年是閏年。判斷閏年的條件是:如果該年份能被4整除但不能被100整除,或者能被400整除,則該年為閏年。 算法描述(偽代碼): 輸入年份y IF y能被4整除 THEN IF y 不能被100整除 THEN 輸出“是閏年” ELSE IF y 能被400整除 THEN 輸出“是閏年” ELSE 輸出“不是閏年” END IF END IF ELSE 輸出“不是閏年” END IF,練習(xí):說(shuō)出下面流程圖的各框名稱,開(kāi)始框,輸入框,處理框,判斷框,處理框,處理框,處理框,輸出框,結(jié)束框,如果兩個(gè)數(shù)有最大公約數(shù)A,那么這兩個(gè)數(shù),以及這兩個(gè)數(shù)的差,還有大數(shù)除以小數(shù)的余數(shù),必然都是A的倍數(shù)。 所以當(dāng)最后兩個(gè)數(shù)剛好能整除時(shí),較小的數(shù)就是最大公約數(shù)。,1)什么是算法?,解決問(wèn)題的方法和步驟就是算法,小結(jié) :,2)算法描述的方法有三種。,用自然語(yǔ)言來(lái)描述 用流程圖來(lái)描述 用偽代碼描述算法,小結(jié) :,程序,學(xué)習(xí)了三種描述算法的方法,但這三種算法計(jì)算機(jī)無(wú)法識(shí)別,必須編寫(xiě)程序代碼,方可實(shí)現(xiàn)用計(jì)算機(jī)解決問(wèn)題。 程序源代碼(也稱源程序),是指一系列人類(lèi)可讀的計(jì)算機(jī)語(yǔ)言指令。 程序(program)是為實(shí)現(xiàn)特定目標(biāo)或解決特定問(wèn)題而用計(jì)算機(jī)語(yǔ)言編寫(xiě)的命令序列的集合。,Visual Basic,VB是一種基于BASIC語(yǔ)言的可視化程序開(kāi)發(fā)工具,由微軟公司開(kāi)發(fā)的包含協(xié)助開(kāi)發(fā)環(huán)境的事件驅(qū)動(dòng)編程語(yǔ)言 。 Visual basic 具有“面向?qū)ο蟆钡奶匦?Visual Basic 應(yīng)用中程序的基本單元是對(duì)象 用Visual Basic 編程就是用“對(duì)象”組裝程序。 在Visual Basic中,可以通過(guò)屬性、方法和事件來(lái)說(shuō)明和衡量一個(gè)對(duì)象的特征。,桌面小時(shí)鐘問(wèn)題的算法設(shè)計(jì),(1)算法分析。 先檢查小時(shí)鐘數(shù)字的顯示狀態(tài)(處于變化還是停止 狀態(tài)),如果是變化狀態(tài),就讓它停止,如果是停 止?fàn)顟B(tài),就讓它開(kāi)始變化。 (2)算法描述。 Step1: 檢查小時(shí)鐘數(shù)字的顯示狀態(tài)。 Step2: 如果是變化狀態(tài),就讓它停止。 Step3: 如果是停止?fàn)顟B(tài),就讓它開(kāi)始變化。,VB程序編寫(xiě)的兩大步驟,界面的設(shè)計(jì): 窗體和窗體中的對(duì)象 代碼的編寫(xiě): 針對(duì)對(duì)象,設(shè)置觸發(fā)事件,編寫(xiě)指令,修改對(duì)象的屬性,VB是面向?qū)ο蟮恼Z(yǔ)言,基于對(duì)事件編程。 一個(gè)對(duì)象中可以包含屬性、方法,也可以包含事件。 一般情況,代碼寫(xiě)在對(duì)象的事件里,表示當(dāng)該對(duì)象的某個(gè)事件被觸發(fā)時(shí),代碼就被執(zhí)行了。 代碼可以訪問(wèn)對(duì)象的屬性,也可以調(diào)用對(duì)象的方法。,屬性、方法和事件,事件(Event) 事件是指發(fā)生在某一對(duì)象上的事情。事件又可分為鼠標(biāo)事件和鍵盤(pán)事件。例如,在命令按鈕(Command Button)這一對(duì)象上可能發(fā)生鼠標(biāo)單擊(Click)、鼠標(biāo)移動(dòng)(Mouse Move)、鼠標(biāo)按下(Mouse Down)等鼠標(biāo)事件,也可能發(fā)生鍵盤(pán)按下(Key Down)等鍵盤(pán)事件??傊?,事件指明了對(duì)象“什么情況下做?”,常用于定義對(duì)象發(fā)生某種反映的時(shí)機(jī)和條件。,屬性、方法和事件,方法(Method) 方法是用來(lái)控制對(duì)象的功能及操作的內(nèi)部程序。例如,人具有說(shuō)話、行走、學(xué)習(xí)、睡覺(jué)等功能,在visual Basic中,對(duì)象所能提供的這些功能和操作,就稱作“方法”。以窗體為例,它具有顯示(show)或隱藏(hide)的方法。總之,方法指明了對(duì)象“能做什么?”,常用于定義對(duì)象的功能和操作。,屬性、方法和事件,屬性(Propery) 屬性是指用于描述對(duì)象的名稱、位置、顏色、字體等特征的一些指標(biāo)??梢酝ㄟ^(guò)屬性改變對(duì)象的特性。 有些屬性可以在設(shè)計(jì)時(shí)通過(guò)屬性窗口來(lái)設(shè)置,不用編寫(xiě)任何代碼;而有些屬性則必須通過(guò)編寫(xiě)代碼,在運(yùn)行程序的同時(shí)進(jìn)行設(shè)置。可以在運(yùn)行時(shí)讀取和設(shè)置取值的屬性成為讀寫(xiě)屬性,只能讀取的屬性成為只讀屬性??傊畬傩灾该髁藢?duì)象“是什么樣的?”,常用于定義對(duì)象的外觀。,算法、程序設(shè)計(jì)與程序設(shè)計(jì)語(yǔ)言之間的關(guān)系,算法 什么是算法?算法有哪些特征? 算法是程序設(shè)計(jì)的前提,它包含方法和步驟; 程序設(shè)計(jì) 尋求解決問(wèn)題的方法,并將其實(shí)現(xiàn)步驟寫(xiě)成計(jì)算機(jī)可執(zhí)行的程序的過(guò)程。 程序是實(shí)現(xiàn)算法中的思想的過(guò)程; 程序設(shè)計(jì)語(yǔ)言 泛指一切用于書(shū)寫(xiě)計(jì)算機(jī)程序的語(yǔ)言。 程序設(shè)計(jì)語(yǔ)言把算法轉(zhuǎn)化為計(jì)算機(jī)認(rèn)識(shí)的語(yǔ)言。,認(rèn)識(shí)程序設(shè)計(jì)語(yǔ)言,發(fā)展過(guò)程 機(jī)器語(yǔ)言:由一串“0”和“1”構(gòu)成二進(jìn)制代碼。 匯編語(yǔ)言:是一種符號(hào)化(英文助記符)的機(jī)器語(yǔ)言。 高級(jí)語(yǔ)言:如Basic、C/C+、Fortran、Pascal、Cobol、Java等。,認(rèn)識(shí)程序設(shè)計(jì)語(yǔ)言,分類(lèi)(按轉(zhuǎn)換方式不同分類(lèi)) 編譯型語(yǔ)言、解釋型語(yǔ)言 編寫(xiě)的源程序需要用編譯程序先翻譯成機(jī)器語(yǔ)言的目標(biāo)程序,然后再由連接裝配程序進(jìn)行連接裝配,生成可執(zhí)行程序,這樣才能被計(jì)算機(jī)執(zhí)行。 如:C/C+ 、 VB 、 Pascal 、 Cobol 源程序輸入計(jì)算機(jī)后,運(yùn)行源程序,相應(yīng)的解釋程序會(huì)逐條分析源程序中的語(yǔ)句,每解釋一句由計(jì)算機(jī)執(zhí)行
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國(guó)網(wǎng)店裝修項(xiàng)目創(chuàng)業(yè)計(jì)劃書(shū)
- 中國(guó)紅薯種植項(xiàng)目創(chuàng)業(yè)計(jì)劃書(shū)
- 中國(guó)家庭理療設(shè)備項(xiàng)目創(chuàng)業(yè)計(jì)劃書(shū)
- 中國(guó)可信計(jì)算機(jī)項(xiàng)目創(chuàng)業(yè)計(jì)劃書(shū)
- 湖南飼料項(xiàng)目創(chuàng)業(yè)計(jì)劃書(shū)
- 安全教育測(cè)試題及答案
- 樂(lè)高面試題及答案
- 2025版權(quán)轉(zhuǎn)讓合同(稿酬版)
- 2025【合同范本】貸款擔(dān)保合同范本與訂立條件
- 2025企業(yè)租賃車(chē)輛合同模板
- 自動(dòng)生成的文檔-202504081202-70
- 2025年云南省高考物理試卷
- 公交公司物業(yè)管理制度
- 縣級(jí)醫(yī)院收支管理制度
- 三人合伙股東合作協(xié)議書(shū)
- 理論聯(lián)系實(shí)際談一談如何維護(hù)政治安全?參考答案1
- 2025屆廣東省東莞中學(xué)七年級(jí)數(shù)學(xué)第二學(xué)期期末聯(lián)考試題含解析
- 2024吉林省農(nóng)村信用社聯(lián)合社招聘筆試歷年典型考題及考點(diǎn)剖析附帶答案詳解
- GA 1812.1-2024銀行系統(tǒng)反恐怖防范要求第1部分:人民幣發(fā)行庫(kù)
- 2025年度專業(yè)技術(shù)人員繼續(xù)教育公需科目考試題(附答案)
- 新工科背景下大學(xué)化學(xué)課程的創(chuàng)新與實(shí)踐探索
評(píng)論
0/150
提交評(píng)論