電子教案1-1 程序設(shè)計基本方法_第1頁
電子教案1-1 程序設(shè)計基本方法_第2頁
電子教案1-1 程序設(shè)計基本方法_第3頁
電子教案1-1 程序設(shè)計基本方法_第4頁
電子教案1-1 程序設(shè)計基本方法_第5頁
已閱讀5頁,還剩53頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Python語言程序設(shè)計北京理工大學(xué) 嵩天第1章 程序設(shè)計基本方法 計算機(jī)的概念 n 計算機(jī)是根據(jù)指令操作數(shù)據(jù)的設(shè)備n 具備功能性和可編程性兩個基本特性 功能性指對數(shù)據(jù)的操作,表現(xiàn)為數(shù)據(jù)計算、輸入輸出處理和結(jié)果存儲等。 可編程性指它可以根據(jù)一系列指令自動地、可預(yù)測地、準(zhǔn)確地完成操作者的意圖 計算機(jī)的概念n 計算機(jī)硬件所依賴的集成電路規(guī)模按照摩爾定律以指數(shù)方式增長n 計算機(jī)運行速度也接近幾何級數(shù)快速增加n 計算機(jī)所能高效支撐的功能不斷豐富發(fā)展 n 程序設(shè)計語言經(jīng)歷了從機(jī)器語言到高級語言的發(fā)展過程,朝著更接近自然語言的方向發(fā)展。計算機(jī)的概念n 摩爾定律是計算機(jī)發(fā)展歷史上最重要的預(yù)測法則摩爾定律指出

2、,單位面積集成電路上可容納晶體管的數(shù)量約每兩年翻一倍。由于計算機(jī)中幾乎所有重要部件都由集成電路實現(xiàn) 摩爾定律(Moores Law) n 第一階段:1946年到1981年,“計算機(jī)系統(tǒng)結(jié)構(gòu)階段” n 第二階段:1982年到2007年,“計算機(jī)網(wǎng)絡(luò)和視窗階段” n 第三階段:2008年至今,“復(fù)雜信息系統(tǒng)階段”。 n 第四階段:約20年后未來的某個時期開始, “人工智能階段” 計算機(jī)技術(shù)發(fā)展水平的時代性 程序設(shè)計語言n 程序設(shè)計語言包括編譯執(zhí)行和解釋執(zhí)行兩種方式程序設(shè)計語言是計算機(jī)能夠理解和識別用戶操作意圖的一種交互體系,它按照特定規(guī)則組織計算機(jī)指令,使計算機(jī)能夠自動進(jìn)行各種運算處理。按照程序設(shè)

3、計語言規(guī)則組織起來的一組計算機(jī)指令稱為計算機(jī)程序。 程序設(shè)計語言概述n 機(jī)器語言機(jī)器語言是一種二進(jìn)制語言,它直接使用二進(jìn)制代碼表達(dá)指令,是計算機(jī)硬件可以直接識別和執(zhí)行的程序設(shè)計語言。例如:執(zhí)行數(shù)字2和3的加法,16位計算機(jī)上的機(jī)器指令為:11010010 00111011,不同計算機(jī)結(jié)構(gòu)的機(jī)器指令不同 程序設(shè)計語言概述n 匯編語言使用助記符與機(jī)器語言中的指令進(jìn)行一一對應(yīng),在計算機(jī)發(fā)展早期幫助程序員提高編程效率 例如:執(zhí)行數(shù)字2和3的加法,匯編語言指令為:add 2, 3, result,運算結(jié)果寫入result。l 機(jī)器語言和匯編語言都直接操作計算機(jī)硬件并基于此設(shè)計,所以它們統(tǒng)稱為低級語言。程

4、序設(shè)計語言概述n 高級語言高級語言區(qū)別于低級語言在于,高級語言是接近自然語言的一種計算機(jī)程序設(shè)計語言,更容易地描述計算問題并利用計算機(jī)解決計算問題。 例如:執(zhí)行數(shù)字2和3加法的高級語言代碼為:result = 2 + 3程序設(shè)計語言概述高級語言按照計算機(jī)執(zhí)行方式的不同可分成兩類n靜態(tài)語言n腳本語言這里所說的執(zhí)行方式指計算機(jī)執(zhí)行一個程序的過程,靜態(tài)語言采用編譯執(zhí)行,腳本語言采用解釋執(zhí)行。 編譯和解釋n 編譯是將源代碼轉(zhuǎn)換成目標(biāo)代碼的過程,通常,源代碼是高級語言代碼,目標(biāo)代碼是機(jī)器語言代碼,執(zhí)行編譯的計算機(jī)程序稱為編譯器編譯和解釋n 解釋是將源代碼逐條轉(zhuǎn)換成目標(biāo)代碼同時逐條運行目標(biāo)代碼的過程。執(zhí)行

5、解釋的計算機(jī)程序稱為解釋器。編譯和解釋編譯是一次性地翻譯,一旦程序被編譯,不再需要編譯程序或者源代碼。n 對于相同源代碼,編譯所產(chǎn)生的目標(biāo)代碼執(zhí)行速度更快。n 目標(biāo)代碼不需要編譯器就可以運行,在同類型操作系統(tǒng)上使用靈活。編譯和解釋解釋則在每次程序運行時都需要解釋器和源代碼。n解釋執(zhí)行需要保留源代碼,程序糾錯和維護(hù)十分方便。n只要存在解釋器,源代碼可以在任何操作系統(tǒng)上運行,可移植性好 編譯和解釋為什么要學(xué)習(xí)計算機(jī)編程?因為“編程是件很有趣的事兒”!計算機(jī)編程計算機(jī)編程計算思維是區(qū)別于以數(shù)學(xué)為代表的邏輯思維和以物理為代表的實證思維的第三種思維模式。編程是一個求解問題的過程p首先需要分析問題,抽象內(nèi)

6、容之間的交互關(guān)系p設(shè)計利用計算機(jī)求解問題的確定性方法,p進(jìn)而通過編寫和調(diào)試代碼解決問題這是從抽象問題到解決問題的完整過程。 Python語言概述Python語言的誕生Guido van RossumPython語言創(chuàng)立者2002年,Python 2.x2008年,Python 3.x使用Python語言編寫的Hello程序只有一行代碼 print(“Hello World”)第一行的“”是Python語言運行環(huán)境的提示符第二行是Python語句的執(zhí)行結(jié)果 編寫Hello程序print(Hello World)Hello World#include int main(void)printf(He

7、llo Worldn);return 0;一般來說,同樣功能的程序,Python語言實現(xiàn)的代碼行數(shù)僅相當(dāng)于C語言的1/5至1/10,簡潔程度取決于程序的復(fù)雜度和規(guī)模。C語言的Hello程序 腳本語言 + 語句執(zhí)行 例1: print(“Hello World!大家好大家好!) 例2: sum = 99999 * 99999 print(sum)Python語言的優(yōu)勢 例3: months=JanFebMarAprMayJunJulAugSepOctNovDec n = 4 monthAbbrev = months(n-1)*3:(n-1)*3+3 print(monthAbbrev)Pytho

8、n語言的優(yōu)勢簡潔 + 強(qiáng)制可讀性例4: def mean(numbers): s = 0.0 for num in numbers: s = s + num return s / len(numbers) nums = 0,1,2,3,4,5,6,7,8,9 print(mean(nums)Python語言的優(yōu)勢跨平臺 + 開源/目前有93561個開源庫,覆蓋各類計算問題例5: from random import random rnd = random()*10 print(rnd)Python語言的優(yōu)勢Python語言的優(yōu)勢:面向過程 + 面向?qū)ο?/p>

9、靈活的介紹程序設(shè)計理念Python語言的優(yōu)勢:圖形界面Windows窗口玫瑰花Python語言的優(yōu)勢Python語言特點n Python語言是通用語言n Python語言是腳本語言n Python語言是開源語言n Python語言是跨平臺語言n Python語言是多模型語言Python開發(fā)環(huán)境配置安裝n 到Python主頁下載并安裝Python基本開發(fā)和運行環(huán)境,網(wǎng)址:/downloads/n 根據(jù)操作系統(tǒng)不同選擇不同版本n 下載相應(yīng)的Python 3.0系列版本程序安裝安裝啟動n 方法1:啟動Windows命令行工具,輸入python啟動n 方法2:調(diào)用IDLE來

10、啟動Python圖形化運行環(huán)境啟動n 方法3:按照語法格式編寫代碼,編寫可以用任何文本編輯器,保存為文件。啟動n 方法4:打開IDLE,點擊Ctrl+N打開一個新窗口,輸入語句并保存,使用快鍵建F5即可運行該程序啟動n 方法5:將Python集成到Eclipse、PyCharm等面向較大規(guī)模項目開發(fā)的集成開發(fā)環(huán)境中Hello程序采用上述某個方法,執(zhí)行: 程序的基本編寫方法n 輸入數(shù)據(jù)n 處理數(shù)據(jù)n 輸出數(shù)據(jù)IPO程序編寫方法n 輸入數(shù)據(jù)輸入(Input)是一個程序的開始。程序要處理的數(shù)據(jù)有多種來源,形成了多種輸入方式,包括:文件輸入、網(wǎng)絡(luò)輸入、控制臺輸入、交互界面輸出、隨機(jī)數(shù)據(jù)輸入、內(nèi)部參數(shù)輸

11、入等。IPO程序編寫方法n 處理數(shù)據(jù)處理(Process)是程序?qū)斎霐?shù)據(jù)進(jìn)行計算產(chǎn)生輸出結(jié)果的過程。計算問題的處理方法統(tǒng)稱為“算法”,它是程序最重要的組成部分。可以說,算法是一個程序的靈魂。IPO程序編寫方法n 輸出數(shù)據(jù)輸出(Output)是程序展示運算成果的方式。程序的輸出方式包括:控制臺輸出、圖形輸出、文件輸出、網(wǎng)絡(luò)輸出、操作系統(tǒng)內(nèi)部變量輸出等。IPO程序編寫方法n 微實例1.1圓面積的計算輸入:圓半徑raduis處理:計算圓面積area = * radius * radius (此處,取3.1415)輸出:圓面積area IPO程序編寫方法n 分析問題分析問題的計算部分n 劃分邊界劃分問題的功能邊界n 設(shè)計算法設(shè)計問題的求解算法n 編寫程序,編寫問題的計算程序n 調(diào)試測試,調(diào)試和測試程序n 升級維護(hù),適應(yīng)問題的升級維護(hù)使用計算機(jī)解決問題 Python語言版本更迭Python語言的版本更迭n 更高級別的3.0系列不兼容早期2.0系列n 2008年至今,版本更迭帶來大量庫函數(shù)的升級替換,Python語言的版本更迭痛苦且漫長n 到今天,Python 3.x系列已經(jīng)成為主流本章小結(jié)本章具體講解了計算機(jī)的基本定義、計算機(jī)的功能性和可編程性、程序設(shè)計語言分類、編譯和解釋、Pyt

溫馨提示

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

最新文檔

評論

0/150

提交評論