freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

程序設(shè)計(jì)思想與方法(已修改)

2025-08-01 07:04 本頁(yè)面
 

【正文】 程序設(shè)計(jì)思想與方法 翁惠玉 Email: 《 程序設(shè)計(jì)思想與方法 》 2 教材參考教材 ? 教材 ?很遺憾 ,暫無(wú)合適的中文版教材 ?目前使用 : Python Programming: An Introduction to Computer Science. (電子版 ) ?How to Think Like a Computer Scientist—Learning with Python.(電子版 ) 《 程序設(shè)計(jì)思想與方法 》 3 什么是計(jì)算機(jī)科學(xué) ? ? 計(jì)算機(jī)科學(xué)并非研究計(jì)算機(jī) ! ?正如天文學(xué)不是研究天文望遠(yuǎn)鏡 ? CS要回答的基本問(wèn)題 :什么是可計(jì)算的 ? ? 對(duì)此問(wèn)題的回答有三種方式 : ?實(shí)際 設(shè)計(jì) 一個(gè)解決問(wèn)題的算法 ?理論 分析 問(wèn)題的可解性:無(wú)解的 ,不是能行可解的 ?通過(guò) 實(shí)驗(yàn) 來(lái)研究問(wèn)題 . 3 《 程序設(shè)計(jì)思想與方法 》 4 課程主要內(nèi)容 ? 解決可計(jì)算問(wèn)題需要教會(huì)計(jì)算機(jī)如何解決問(wèn)題 ? 如何教計(jì)算機(jī)解決問(wèn)題 ?了解計(jì)算機(jī)有哪些基本功能 ?因材施教,設(shè)計(jì)教學(xué)的過(guò)程 ?一門(mén)與計(jì)算機(jī)進(jìn)行交流的語(yǔ)言 《 程序設(shè)計(jì)思想與方法 》 5 對(duì)本課程的定位 ? 學(xué)習(xí)計(jì)算機(jī)科學(xué)解決問(wèn)題的思想方法 , 應(yīng)用于其他專(zhuān)業(yè)領(lǐng)域 ? 不是程序設(shè)計(jì)語(yǔ)言課程 ! ?本課程需要編程 ,以加深對(duì)計(jì)算思維的理解 ?壞消息 :學(xué)習(xí)編程語(yǔ)言需要掌握非常繁瑣的細(xì)節(jié) ?好消息: Python語(yǔ)言非常簡(jiǎn)單 ,易學(xué)易用 ? 也不是算法和數(shù)據(jù)結(jié)構(gòu)課程 ! ?當(dāng)然會(huì)學(xué)習(xí)這方面的一些基本技術(shù) 5 《 程序設(shè)計(jì)思想與方法 》 6 計(jì)算機(jī)與程序 ? 計(jì)算機(jī)組成 ? 程序設(shè)計(jì)語(yǔ)言 ? 初識(shí) Python 《 程序設(shè)計(jì)思想與方法 》 7 計(jì)算機(jī)的組成 ? 硬件:計(jì)算機(jī)的軀殼 ? 軟件:計(jì)算機(jī)的靈魂 計(jì)算機(jī),也被稱(chēng)之為“電腦”,是一種能夠按照事先存儲(chǔ)的程序自動(dòng)、高效地對(duì)數(shù)據(jù)進(jìn)行輸入、處理、存儲(chǔ)和輸出的系統(tǒng) 《 程序設(shè)計(jì)思想與方法 》 8 計(jì)算機(jī)硬件 存儲(chǔ)器 輸入設(shè)備 輸出設(shè)備 控制器 運(yùn)算器 CPU 《 程序設(shè)計(jì)思想與方法 》 9 存儲(chǔ)器 ? 保存正在運(yùn)行的程序代碼和數(shù)據(jù) ? 內(nèi)存的最小單元是 bit,一個(gè) bit存儲(chǔ)一個(gè)二進(jìn)制位。一般 8個(gè) bit組成一個(gè) byte,若干個(gè)byte組成一個(gè) word ? 在一般的機(jī)器中,內(nèi)存按字節(jié)編址,內(nèi)存大小也是按字節(jié)計(jì)量 ? 關(guān)機(jī)后,內(nèi)存的數(shù)據(jù)全部丟失 《 程序設(shè)計(jì)思想與方法 》 10 CPU CPU (Central Processing Unit) 有兩個(gè)部件組成: ? ALU – ArithmeticLogic Unit(運(yùn)算器) ? Control unit (控制器) 《 程序設(shè)計(jì)思想與方法 》 11 控制器 ? 控制器控制計(jì)算機(jī)的其余部分如何完成程序的指令 ?指揮內(nèi)存和其它部件之間的信息的傳送(包括信息和指令) ?指揮 CPU和輸入輸出設(shè)備之間的控制信息的傳送 《 程序設(shè)計(jì)思想與方法 》 12 控制器中的信息存儲(chǔ) ? 控制器中有兩個(gè)寄存器: ?指令寄存器 ( IR ):保存當(dāng)前正在執(zhí)行的指令 ?程序計(jì)數(shù)器 ( PC ):保存下一條要執(zhí)行的指令地址 《 程序設(shè)計(jì)思想與方法 》 13 控制器的工作 ? 取下一條指令:按 PC指定的地址到內(nèi)存中取出下一條指令,存入 IR。 ? 解碼指令:將指令解碼成一系列的控制信號(hào) ? 執(zhí)行指令:將控制信號(hào)發(fā)送給相關(guān)部件,執(zhí)行相應(yīng)的運(yùn)算 《 程序設(shè)計(jì)思想與方法 》 14 運(yùn)算器的組成 ? 邏輯電路:執(zhí)行控制器發(fā)出的控制信號(hào) ? 一組存放正在運(yùn)算的數(shù)據(jù)的寄存器 《 程序設(shè)計(jì)思想與方法 》 15 輸入輸出設(shè)備 ? 輸入設(shè)備將人能理解的符號(hào)轉(zhuǎn)換成計(jì)算機(jī)能處理的符號(hào)。常用的輸入設(shè)備有:鍵盤(pán)、鼠標(biāo)、光筆等 ? 輸出設(shè)備將計(jì)算機(jī)的輸出轉(zhuǎn)換成人能理解的輸出。常用的輸出設(shè)備有:顯示器、打印機(jī)、音響設(shè)備等 《 程序設(shè)計(jì)思想與方法 》 16 計(jì)算機(jī)的組成 ? 硬件:計(jì)算機(jī)的軀殼 ? 軟件:計(jì)算機(jī)的靈魂 計(jì)算機(jī),也被稱(chēng)之為“電腦”,是一種能夠按照事先存儲(chǔ)的程序自動(dòng)、高效地對(duì)數(shù)據(jù)進(jìn)行輸入、處理、存儲(chǔ)和輸出的系統(tǒng) 《 程序設(shè)計(jì)思想與方法 》 17 計(jì)算機(jī)軟件 ? 軟件決定了計(jì)算機(jī)能做什么 .沒(méi)有軟件 ,計(jì)算機(jī)只是一堆廢鐵 . ? 軟件可以分為系統(tǒng)軟件和應(yīng)用軟件。 ? 系統(tǒng)軟件居于計(jì)算機(jī)系統(tǒng)中最靠硬件的部分,它將計(jì)算機(jī)的用戶(hù)與硬件隔離。系統(tǒng)軟件與具體的應(yīng)用無(wú)關(guān),但其他的軟件要通過(guò)系統(tǒng)軟件才能發(fā)揮作用。常用的系統(tǒng)軟件有操作系統(tǒng)、編譯器、網(wǎng)絡(luò)軟件等。 ? 應(yīng)用軟件是為了支持某一應(yīng)用而開(kāi)發(fā)的軟件。如字處理軟件、財(cái)務(wù)軟件等。 《 程序設(shè)計(jì)思想與方法 》 18 計(jì)算機(jī)與程序 ? 計(jì)算機(jī)組成 ? 程序設(shè)計(jì)語(yǔ)言 ? 初識(shí) Python 《 程序設(shè)計(jì)思想與方法 》 19 程序設(shè)計(jì)語(yǔ)言 ? 人與計(jì)算機(jī)進(jìn)行交流的一種語(yǔ)言 ? 為什么不用自然語(yǔ)言與計(jì)算機(jī)交互? ? 精確的語(yǔ)法和語(yǔ)義 ? 無(wú)二義性 ? 有不同層次的程序設(shè)計(jì)語(yǔ)言 Lu Chaojun, SJTU 19 《 程序設(shè)計(jì)思想與方法 》 20 不同層次的程序設(shè)計(jì)語(yǔ)言 ? 機(jī)器語(yǔ)言 ? 匯編語(yǔ)言 ? 高級(jí)語(yǔ)言 《 程序設(shè)計(jì)思想與方法 》 21 機(jī)器語(yǔ)言 ? 是機(jī)器的母語(yǔ)。每種計(jì)算機(jī)都有自己的機(jī)器語(yǔ)言。與計(jì)算機(jī)硬件設(shè)計(jì)有關(guān)。 ? 每個(gè)語(yǔ)句用一組二進(jìn)制數(shù)表示 ? 用機(jī)器語(yǔ)言寫(xiě)程序是非常困難的,讀機(jī)器語(yǔ)言寫(xiě)的程序也是非常困難的 ? 機(jī)器語(yǔ)言提供的功能非常簡(jiǎn)單 《 程序設(shè)計(jì)思想與方法 》 22 匯編語(yǔ)言 ? 用縮寫(xiě)和助記符代替機(jī)器語(yǔ)言的 0和 1的比特串 ? 和機(jī)器語(yǔ)言一樣,不同類(lèi)的機(jī)器有不同的匯編語(yǔ)言 ? 匯編程序:將匯編語(yǔ)言寫(xiě)的程序翻譯成機(jī)器語(yǔ)言的程序 ? 解決了機(jī)器語(yǔ)言的可讀性問(wèn)題,但沒(méi)有解決功能簡(jiǎn)單的問(wèn)題以及可移植型問(wèn)題 《 程序設(shè)計(jì)思想與方法 》 23 高級(jí)語(yǔ)言 ? 類(lèi)似于英語(yǔ)的語(yǔ)言,適合于人理解 ? 功能比機(jī)器語(yǔ)言強(qiáng),解決問(wèn)題更加容易 ? 編譯器:將過(guò)程化語(yǔ)言寫(xiě)的程序(源代碼)翻譯成機(jī)器語(yǔ)言的程序(目標(biāo)代碼) ? 解釋器:逐句解釋源程序并執(zhí)行,不保存目標(biāo)代碼。 《 程序設(shè)計(jì)思想與方法 》 24 編譯執(zhí)行 main() {int i, s。 i=1。 s=0。 C piler 01100010 11101001 Source program Object program 將程序全部翻譯成機(jī)器語(yǔ)言的程序,然后再執(zhí)行。 《 程序設(shè)計(jì)思想與方法 》 25 解釋執(zhí)行 源程序 解釋系統(tǒng) (逐句解釋、執(zhí)行) 原始數(shù)據(jù) 結(jié)果 《 程序設(shè)計(jì)思想與方法 》 26 高級(jí)語(yǔ)言的特點(diǎn) ? 具備了一定的機(jī)器獨(dú)立性,使用戶(hù)可以專(zhuān)注于解決問(wèn)題的方法。但某些方面還是受到機(jī)器的限制 ? 為了解決移植性問(wèn)題, ANSI制訂了一系列的標(biāo)準(zhǔn) 《 程序設(shè)計(jì)思想與方法 》 27 高級(jí)語(yǔ)言 ? 本課程采用 Python語(yǔ)言 ? 高級(jí)程序設(shè)計(jì)語(yǔ)言有很多種,據(jù)說(shuō) 2022年網(wǎng)上被引用最多的 10個(gè)語(yǔ)言是 (按字母順序 ): C, C++, C, Java, JavaScript, Perl, PHP, Python, Ruby, SQL 27 《 程序設(shè)計(jì)思想與方法 》 28 計(jì)算機(jī)與程序 ? 計(jì)算機(jī)組成 ? 程序設(shè)計(jì)語(yǔ)言 ? 初識(shí) Python 《 程序設(shè)計(jì)思想與方法 》 29 Python ? Python采用編譯 /解釋混合方式 :先編譯成字節(jié)碼,再解釋執(zhí)行 ? Python 軟件 : 用戶(hù)碼 /密碼: hyweng/public ? 啟動(dòng) Python 29 《 程序設(shè)計(jì)思想與方法 》 30 初識(shí) Python ? :提示符,提示你可以輸入命令 ? 語(yǔ)句:一條命令,如 print ―hello‖ ? 串:“ hello world‖ ? 數(shù): 10 ? 表達(dá)式: 3 + 5 ? 賦值: x = 5 30 《 程序設(shè)計(jì)思想與方法 》 31 函數(shù) ? 函數(shù):將完成某一功能的語(yǔ)句組合起來(lái) ? 函數(shù)定義 ? 函數(shù)調(diào)用: def area( ): … x = 5 … y = 6 … print x * y … area( ) 30 《 程序設(shè)計(jì)思想與方法 》 32 帶參數(shù)的函數(shù) ? 函數(shù)定義 ? 函數(shù)的調(diào)用 def area(x, y): … print x * y … area(3, 4) 12 area(2, 4) 8 《 程序設(shè)計(jì)思想與方法 》 33 模塊 ? 如果一段程序需要反復(fù)執(zhí)行,可以把它以文件形式保存在外存儲(chǔ)器中。 ? 保存在外存儲(chǔ)器中的程序稱(chēng)為一個(gè)模塊,也稱(chēng)為腳本文件或源文件。 ? PYTHON的源文件的后綴名為 py ? 程序模擬物理現(xiàn)象 :chaos程序 《 程序設(shè)計(jì)思想與方法 》 34 File: A simple program illustrating chaotic behavior. def main(): print This program illustrates a chaotic function x = input(Enter a number between 0 and 1: ) for i in range(10): x = * x * (1 x) print x input(39。Enter 0 to quit 39。) main() 《 程序設(shè)計(jì)思想與方法 》 35 ? main函數(shù):標(biāo)志程序的開(kāi)始,也可以省略 ? 注釋 ? 變量與賦值 ? 程序的執(zhí)行:一個(gè)個(gè)語(yǔ)句順序執(zhí)行,但也可以重復(fù)執(zhí)行某個(gè)語(yǔ)句 《 程序設(shè)計(jì)思想與方法 》 36 for循環(huán) ? 將一段語(yǔ)句重復(fù)執(zhí)行多次 ? 語(yǔ)法 for var in sequence: body ?sequence是一個(gè)值的序列 ,如 [1,3,5,7,9]或range(10)(即 [0,1,…,9]). ?body可以是任何語(yǔ)句序列 ,用左縮進(jìn)標(biāo)識(shí) . 36 《 程序設(shè)計(jì)思想與方法 》 37 程序的控制流 ? 程序的諸語(yǔ)句通常是順序執(zhí)行的 ,但循環(huán)語(yǔ)句改變了控制流 ,表示一種控制結(jié)構(gòu) . ? 控制流可以用流程圖直觀表達(dá) 37 body var取 seq的下一個(gè)值 無(wú) 有 《 程序設(shè)計(jì)思想與方法 》 38 保存文件 ? 用任何一個(gè)文本編輯器,保存成純文本格式 ? 在 IDLE中的 file菜單中選擇 new window,輸入程序的內(nèi)容。輸入結(jié)束后再在 file菜單中選擇 save或 save as保存到文件中 《 程序設(shè)計(jì)思想與方法 》 39 模塊的執(zhí)行 ? 在 IDLE中執(zhí)行程序 ?打開(kāi)文件:在 file菜單下選 open或直接用右鍵點(diǎn)擊文件,并選擇用 IDLE打開(kāi),或先打開(kāi) IDLE,再在 file菜單下選擇 open ?執(zhí)行:在 run菜單下選 run module或直接按 f5 ? Cmd界面中執(zhí)行程序 ?import文件 《 程序設(shè)計(jì)思想與方法 》 40 添加 python的路徑 ? Import時(shí),系統(tǒng)必須知道到哪里去找那個(gè)文件 ? 這是通過(guò) PYTHONPATH指定的 ? 安裝 PYTHON時(shí),系統(tǒng)會(huì)指定缺省 path。缺省的路徑是 :\Python26\Lib\sitepackages ? 添加搜索路徑 ? 右鍵單擊我的電腦,然后單擊屬性。 ? 單擊高級(jí)選項(xiàng)卡。 ? 單擊環(huán)境變量。 ? 單擊新建添加一個(gè)新變量名和值。 《 程序設(shè)計(jì)思想與方法 》 41 END 《 程序設(shè)計(jì)思想與方法 》 42 寫(xiě)一個(gè)簡(jiǎn)單的程序 軟件開(kāi)發(fā)過(guò)程 程序?qū)嵗簻囟绒D(zhuǎn)換 程序
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1