資源簡(jiǎn)介 (共19張PPT)第 六 章程序設(shè)計(jì)入門(mén)專(zhuān)題一 程序設(shè)計(jì)語(yǔ)言考綱要求(1)了解程序設(shè)計(jì)語(yǔ)言的定義及程序設(shè)計(jì)語(yǔ)言的分類(lèi)與發(fā)展;(2)了解Python語(yǔ)言的特點(diǎn);(3)了解Python 3.8.6運(yùn)行環(huán)境的搭建方法;(4)掌握應(yīng)用pycharm-community-2020.3開(kāi)發(fā)Python程序的方法。一.算法基礎(chǔ)隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,在每天的工作和生活中,“程序”無(wú)處不在,任何一款軟件的背后都離不開(kāi)程序設(shè)計(jì)的過(guò)程,程序讓冷冰冰的機(jī)器煥發(fā)出更加精彩的生命力。使用程序設(shè)計(jì)語(yǔ)言,我們可以給計(jì)算機(jī)下達(dá)一系列的指令,讓它能按照我們的指揮進(jìn)行相應(yīng)的計(jì)算和操作。程序設(shè)計(jì)就是將問(wèn)題解決的方法和步驟編寫(xiě)成計(jì)算機(jī)可執(zhí)行的程序的過(guò)程。簡(jiǎn)單來(lái)說(shuō),就是告訴計(jì)算機(jī)要做什么,并且每一個(gè)行為的細(xì)節(jié)和順序都要說(shuō)清楚、可執(zhí)行。這樣,計(jì)算機(jī)就能夠很快速地而正確地來(lái)完成所有指令,最終解決問(wèn)題或完成任務(wù)。 編寫(xiě)程序解決問(wèn)題的過(guò)程就是一個(gè)實(shí)現(xiàn)算法的過(guò)程,下面我們結(jié)合設(shè)計(jì)一個(gè)“計(jì)算直角三角形面積算法”的實(shí)例來(lái)學(xué)習(xí)算法的有關(guān)知識(shí)。1.程序設(shè)計(jì)的過(guò)程 設(shè)計(jì)程序解決問(wèn)題的基本步驟是:分析問(wèn)題→設(shè)計(jì)算法→編寫(xiě)程序→調(diào)試運(yùn)行→結(jié)果檢測(cè)。(1)分析問(wèn)題。分析問(wèn)題的需求情況和已知條件,明確需要解決什么問(wèn)題。把問(wèn)題化為用數(shù)學(xué)方法來(lái)解決,并建立數(shù)學(xué)模型。(2)設(shè)計(jì)算法。找出解決問(wèn)題的方法和步聚。(3)編寫(xiě)程序。選擇一種程序設(shè)計(jì)語(yǔ)言編寫(xiě)程序,實(shí)現(xiàn)算法。(4)調(diào)試運(yùn)行。檢查程序的可行性,驗(yàn)證所編寫(xiě)的程序是否正確,查找、修正錯(cuò)誤。(5)檢測(cè)結(jié)果。對(duì)程序功能進(jìn)行檢測(cè)。2.算法及其特點(diǎn) 算法是指解決問(wèn)題的方法和步聚的有限集合 算法是程序設(shè)計(jì)的關(guān)鍵,是核心步聚。算法的主要特點(diǎn)有:(1)有0個(gè)或多個(gè)輸入。算法可以沒(méi)有輸入,也可以有多個(gè)輸入。(2)確定性。算法的每個(gè)步聚必須要有確切地定義,準(zhǔn)確而沒(méi)有歧義。(3)有窮性。一個(gè)算法在執(zhí)行有限步之后必須能結(jié)束。(4)可行性。每個(gè)句子都能正確執(zhí)行,得出結(jié)果。(5)可以有1個(gè)或多個(gè)輸出。算法一定要有輸出,要有結(jié)果,可以有1個(gè)或多個(gè)輸出。實(shí)例:設(shè)計(jì)計(jì)算直角三角形面積的算法 1.分析問(wèn)題 要計(jì)算直角三角形的面積必須知道三角形的底和高的數(shù)值,設(shè)底為a,高為h,面積為s,根據(jù)直角三角形面積的計(jì)算方法,得到計(jì)算公式:s=1/2*a*h。2.設(shè)計(jì)算法設(shè)計(jì)算法時(shí),要把算法表達(dá)出來(lái)才便于編寫(xiě)程序。常用自然語(yǔ)言和流程圖來(lái)描述算法。(1)自然語(yǔ)言描述法。自然語(yǔ)言是人類(lèi)自身使用的語(yǔ)言,用于描述算法比較通俗易懂。計(jì)算直角三角形面積的算法用自然語(yǔ)言描述如下。第1步:分別輸入底和高的值,即輸入a和b的值; 第2步:求三角形的面積s的值,即s=1/2*a*h; 第3步:輸出面積s的值; 第4步:結(jié)束。一.算法基礎(chǔ)(2)流程圖描述法。流程圖是用一組圖形符號(hào)來(lái)描述算法,比較形象直觀、簡(jiǎn)潔清晰。流程圖中用到的符號(hào)如表6-1-1所。計(jì)算直角三角形面積的算法流程圖如圖6-1-1所示。一.算法基礎(chǔ)【實(shí)踐體驗(yàn)】(1)用自然語(yǔ)言描述求圓的周長(zhǎng)與面積的算法。圓的周長(zhǎng)公式:c=2×pi×r;圓的面積公式:c=pi×r×r,其中r為圓的半徑,pi取3.14 。(2)用流程圖描述以下算法。輸入任意兩個(gè)數(shù),輸出較大的一個(gè)。一.算法基礎(chǔ)二.程序設(shè)計(jì)語(yǔ)言1.程序設(shè)計(jì)語(yǔ)言的定義 程序設(shè)計(jì)語(yǔ)言是用于編寫(xiě)程序或設(shè)計(jì)軟件的開(kāi)發(fā)工具,人們把自己的意圖用某種程序設(shè)計(jì)語(yǔ)言編成程序,輸入計(jì)算機(jī),告訴計(jì)算機(jī)完成什么任務(wù)以及如何完成,達(dá)到利用計(jì)算機(jī)解決問(wèn)題的目的。計(jì)算機(jī)程序是指一組能被計(jì)算機(jī)理解并執(zhí)行的指令序列,是計(jì)算機(jī)執(zhí)行算法的一系列操作步驟。2.程序設(shè)計(jì)語(yǔ)言的分類(lèi)與分展 程序設(shè)計(jì)語(yǔ)言經(jīng)歷了從機(jī)器語(yǔ)言、匯編語(yǔ)言到高級(jí)語(yǔ)言的發(fā)展過(guò)程。機(jī)器語(yǔ)言和匯編語(yǔ)言屬于低級(jí)語(yǔ)言。(1)機(jī)器語(yǔ)言 機(jī)器語(yǔ)言是針對(duì)特定型號(hào)的計(jì)算機(jī)編寫(xiě),由二進(jìn)制的0,1代碼指令構(gòu)成,能被計(jì)算機(jī)直接識(shí)別和執(zhí)行,運(yùn)行效率最高。但機(jī)器語(yǔ)言程序難以閱讀、理解和記憶,容易出錯(cuò),編程效率極低,程序移植性最差。(2)匯編語(yǔ)言 匯編語(yǔ)言是一種符號(hào)化的語(yǔ)言,采用英文助記符代替機(jī)器指令,比機(jī)器語(yǔ)言容易識(shí)別和記憶,從而提高了程序的可讀性。匯編語(yǔ)言仍然是面向機(jī)器的語(yǔ)言,對(duì)硬件依賴(lài)性較強(qiáng),移植性較差,但它能充分發(fā)揮計(jì)算機(jī)的特長(zhǎng)與功能,是一種強(qiáng)而有力的程序開(kāi)發(fā)工具。匯編語(yǔ)言程序必須借助編譯程序翻譯成機(jī)器語(yǔ)言程序計(jì)算機(jī)才能執(zhí)行。二.程序設(shè)計(jì)語(yǔ)言(3)高級(jí)語(yǔ)言 高級(jí)語(yǔ)言最接近自然語(yǔ)言,并不特指某一種語(yǔ)言,也不依賴(lài)于特定的計(jì)算機(jī)系統(tǒng),其通用性好、移植性強(qiáng)。用高級(jí)語(yǔ)言編寫(xiě)的程序可讀性強(qiáng),也便于修改和維護(hù)。比較流行的高級(jí)語(yǔ)言有Java、C/C#/C++語(yǔ)言、Visual Basic(VB)、Fortran、Python等。 高級(jí)語(yǔ)言從早期的面向過(guò)程,如Pascal語(yǔ)言,發(fā)展到了面向?qū)ο蟮目梢暬绦蛘Z(yǔ)言,如:Java、C++等。和匯編語(yǔ)言一樣,用高級(jí)語(yǔ)言編寫(xiě)的程序也不能直接被計(jì)算機(jī)理解,必須轉(zhuǎn)換成機(jī)器語(yǔ)言才能被執(zhí)行。高級(jí)語(yǔ)言程序轉(zhuǎn)換為機(jī)器語(yǔ)言程序通常分為兩種方式:①解釋方式:在運(yùn)行程序時(shí)逐條讀取并解釋每個(gè)語(yǔ)句,解釋一句執(zhí)行一句,執(zhí)行效率比較低。Python、Basic語(yǔ)言提供解釋方式。②編譯方式:是將源程序通過(guò)編譯器一次性地“翻譯”成目標(biāo)文件,用機(jī)器語(yǔ)言表示,其目標(biāo)程序可以脫離語(yǔ)言環(huán)境,獨(dú)立執(zhí)行,執(zhí)行效率比較高。現(xiàn)在大多數(shù)的程序設(shè)計(jì)語(yǔ)言都是編譯類(lèi)的,如C、Java、PHP等。三.Python語(yǔ)言的特點(diǎn)Python是一種面向?qū)ο蟮慕忉屝陀?jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,由荷蘭人吉多·范羅蘇姆在1989年發(fā)明的。目前,Python已經(jīng)成為最受歡迎的程序設(shè)計(jì)語(yǔ)言之一,它具有(1)簡(jiǎn)單、免費(fèi)、開(kāi)源和可移植性強(qiáng)。(2)語(yǔ)法簡(jiǎn)潔:實(shí)現(xiàn)相同功能,Python語(yǔ)言的代碼行只相當(dāng)于其它語(yǔ)言的 1/10~1/5。(3)與平臺(tái)無(wú)關(guān):程序無(wú)需修改,便能在安裝了解釋器的 Windows、Linux、Unix、MacOS上跨平臺(tái)使用。(4)類(lèi)庫(kù)豐富:Python標(biāo)準(zhǔn)庫(kù)中提供了幾百個(gè)內(nèi)置類(lèi)和函數(shù)庫(kù)。此外,全世界的程序員為開(kāi)源社區(qū)貢獻(xiàn)了十幾萬(wàn)個(gè)第三方函數(shù)庫(kù),幾乎覆蓋了計(jì)算機(jī)技術(shù)的各個(gè)領(lǐng)域。(5)擴(kuò)展性強(qiáng):能夠把其他語(yǔ)言(如 C++、Java)制作的各種模塊很輕松地連接在一起。四.Python 3.8.6運(yùn)行環(huán)境Python語(yǔ)言有兩種運(yùn)行模式:交互模式和文件模式。交互模式下輸入命令并按回車(chē),馬上可以看到結(jié)果,但命令不便于保存;文件模式下,把程序代碼保存成一個(gè)文件再執(zhí)行。1.啟動(dòng)命令行交互環(huán)境 單擊“開(kāi)始”按鈕→Python 3.8→Python3.8(32-bit)打開(kāi)Python命令窗口 ,在命令提示符“>>>”下輸入任何合法的Python代碼,回車(chē)后會(huì)立刻得到執(zhí)行結(jié)果。例如,在屏幕上顯示“good morning!”,操作方法如圖6-1-2所示。圖6-1-2 命令行方式2.啟動(dòng)集成開(kāi)發(fā)環(huán)境 Python自帶有程序編輯器Python IDLE,啟動(dòng)的方法是單擊“開(kāi)始”按鈕→Python 3.8→IDLE(Python3.8 32-bit),就會(huì)啟動(dòng)集成開(kāi)發(fā)環(huán)境Python shell,一些常見(jiàn)操作命令的作用是:四.Python 3.8.6運(yùn)行環(huán)境(1)新建一個(gè)文件:File→New File;(2)打一個(gè)文件:File→Open …;(3)保存一個(gè)文件:File→Save;(4)文件另存為:File→Save As…;(5)運(yùn)行一個(gè)文件:Run→Run Module,或按鍵 F5。例如,令a=5,b=10,輸出a+b=15,操作過(guò)程如圖6-1-3所示。五.Pycharm-community-2020.3的使用PyCharm Community Edition是目前主流的Python集成開(kāi)發(fā)環(huán)境(IDE)之一,可用于開(kāi)發(fā)復(fù)雜的案例或?qū)嶋H應(yīng)用項(xiàng)目。首先要下載并安裝PyCharm,單擊“開(kāi)始”按鈕→“JetBrain”→“Pycharm-community-2020.3”即可啟動(dòng)。下面以創(chuàng)建計(jì)算直角三角形的面積的程序?yàn)槔榻BPyCharm的使用。 (1)創(chuàng)建項(xiàng)目。在PyCharm中創(chuàng)建一個(gè)名為“mypy”的項(xiàng)目用于管理源程序文件,操作方法如圖6-1-4和圖6-1-5所示。五.Pycharm-community-2020.3的使用五.Pycharm-community-2020.3的使用(2)創(chuàng)建Python程序文件。在剛才創(chuàng)建的項(xiàng)目中創(chuàng)建Python程序文件“mianji.py”,操作方法如圖6-1-6和圖6-1-7所示。五.Pycharm-community-2020.3的使用(3)編寫(xiě)Python代碼。在代碼編輯窗口中輸入計(jì)算直角三角形面積的程序代碼,如圖6-1-8所示。(4)運(yùn)行程序。運(yùn)行程序的方式有三種:①在代碼編輯窗口右擊,在快捷菜單中選擇“Run mianji”命令;②使用快捷鍵Shift+F10;③單擊“Run”菜單→“Run mianji”命令,如圖6-1-9所示。五.Pycharm-community-2020.3的使用課后練習(xí)1.程序設(shè)計(jì)語(yǔ)言的發(fā)展經(jīng)歷了三個(gè)階段,順序正確的是( )。A.匯編語(yǔ)言→低級(jí)語(yǔ)言→高級(jí)語(yǔ)言B.機(jī)器語(yǔ)言→匯編語(yǔ)言→高級(jí)語(yǔ)言C.低級(jí)語(yǔ)言→高級(jí)語(yǔ)言→匯編語(yǔ)言D.高級(jí)語(yǔ)言→匯編語(yǔ)言→低級(jí)語(yǔ)言2.以下關(guān)于Python語(yǔ)言特點(diǎn)的描述中,不正確的是( )。A.它是一種簡(jiǎn)單、免費(fèi)、開(kāi)源的語(yǔ)言B.Python語(yǔ)言程序不容易閱讀C.Python語(yǔ)言是一種高級(jí)語(yǔ)言D.它是一種面向?qū)ο蟮慕忉屝统绦蛟O(shè)計(jì)語(yǔ)言3.以下關(guān)于程序設(shè)計(jì)語(yǔ)言的敘述中,正確的是( )。A.匯編語(yǔ)言對(duì)硬件的依賴(lài)性最低B.高級(jí)語(yǔ)言程序機(jī)器可以直接執(zhí)行C.機(jī)器語(yǔ)言由二進(jìn)制指令組成D.高級(jí)語(yǔ)言要依賴(lài)于特定硬件系統(tǒng)課后練習(xí)4.將高級(jí)語(yǔ)言源程序翻譯成目標(biāo)程序的工具軟件稱(chēng)為( )。A.匯編程序 B.編輯程序 C.編譯程序 D.調(diào)試程序5.程序設(shè)計(jì)的核心步驟是( )。A.分析問(wèn)題 B.設(shè)計(jì)算法 C.編寫(xiě)程序 D.調(diào)試運(yùn)行6.算法流程圖中菱形框用于( )。A.?dāng)?shù)據(jù)處理 B.輸入、輸出 C.賦值 D.條件判斷7.以下不屬于程序設(shè)計(jì)語(yǔ)言的是( )。A.機(jī)器語(yǔ)言 B.匯編語(yǔ)言 C.自然語(yǔ)言 D.高級(jí)語(yǔ)言8.以下不屬于高級(jí)程序設(shè)計(jì)語(yǔ)言的一項(xiàng)是( )。A.OutLook B.C/C++ C.Java D.Visual Basic9.以下文件屬于Python語(yǔ)言源程序的是( )。A.xyks.c B.xyks.pas C.xyks.py D.xyks.exe10.Python語(yǔ)言中運(yùn)行一個(gè)程序的快捷鍵是( )。A.Ctrl+R B.F5 C.F10 D.Shift+F9課后練習(xí)答案題號(hào) 答案 題號(hào) 答案 題號(hào) 答案 題號(hào) 答案 題號(hào) 答案1 B 2 B 3 C 4 C 5 B6 D 7 C 8 A 9 C 10 B 展開(kāi)更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來(lái)源于二一教育資源庫(kù)