(修改)1.2基本算法語句_第1頁
(修改)1.2基本算法語句_第2頁
(修改)1.2基本算法語句_第3頁
(修改)1.2基本算法語句_第4頁
(修改)1.2基本算法語句_第5頁
已閱讀5頁,還剩62頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 知識回顧知識回顧 1、算法的概念、算法的概念 在數(shù)學(xué)上在數(shù)學(xué)上, “算法算法”通常是指可以用計算機來通常是指可以用計算機來 解決的某一類問題的解決的某一類問題的程序或步驟程序或步驟, (1).有序性有序性 (2).確定性確定性 (3).有限性有限性 2、算法最重要的特征:、算法最重要的特征: 4、程序框圖程序框圖又稱流程圖又稱流程圖,是一種用規(guī)是一種用規(guī) 定的圖形、指向線及文字說明來準(zhǔn)確、定的圖形、指向線及文字說明來準(zhǔn)確、 直觀地表示算法的圖形直觀地表示算法的圖形. 3、程序框圖的三種基本的邏輯結(jié)構(gòu)、程序框圖的三種基本的邏輯結(jié)構(gòu) 順序結(jié)構(gòu)順序結(jié)構(gòu)條件結(jié)構(gòu)條件結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) 基本的程序框

2、和它們各自表示的功能如下基本的程序框和它們各自表示的功能如下: 圖形符號圖形符號名稱名稱功能功能 終端框終端框 (起止框起止框) 表示一個算法的起始表示一個算法的起始 和結(jié)束和結(jié)束 輸入、輸輸入、輸 出框出框 表示一個算法輸入和表示一個算法輸入和 輸出的信息輸出的信息 處理框處理框 (執(zhí)行框執(zhí)行框) 判斷某一條件是否成立判斷某一條件是否成立,成立成立 時在出口處標(biāo)明時在出口處標(biāo)明“是是”或或 “Y”;不;不”成立時標(biāo)明成立時標(biāo)明“否否” 或或“N”. 判斷框判斷框 賦值、計算賦值、計算 流程線流程線連接程序框連接程序框 連接點連接點連接程序框圖的兩部分連接程序框圖的兩部分 計算機完成任何一項任

3、務(wù)都需要算法計算機完成任何一項任務(wù)都需要算法, ,但但 是是, ,我們用自然語言或程序框圖描述的算法,我們用自然語言或程序框圖描述的算法, 計算機是無法計算機是無法“看得懂,聽得見看得懂,聽得見”的。因此還的。因此還 需要將算法用計算機能夠理解的需要將算法用計算機能夠理解的程序設(shè)計語言程序設(shè)計語言 (programming languageprogramming language)翻譯成計算機程序。)翻譯成計算機程序。 【創(chuàng)設(shè)情境】【創(chuàng)設(shè)情境】 在現(xiàn)代社會里在現(xiàn)代社會里, ,計算機已經(jīng)成為人們?nèi)粘S嬎銠C已經(jīng)成為人們?nèi)粘?生活和工作不可缺少的工具生活和工作不可缺少的工具, ,如如: :聽聽MP3

4、,MP3,看電影看電影, , 玩游戲玩游戲, ,打字排版打字排版, ,畫卡通畫畫卡通畫, ,處理數(shù)據(jù)等等處理數(shù)據(jù)等等, ,那那 么么, ,計算機是怎樣工作的呢?計算機是怎樣工作的呢? 這就是這一節(jié)所要研究的主要內(nèi)容這就是這一節(jié)所要研究的主要內(nèi)容基本算法基本算法 語句。今天,我們先一起來學(xué)習(xí)語句。今天,我們先一起來學(xué)習(xí)輸入、輸出語句輸入、輸出語句 和賦值語句。和賦值語句。 程序設(shè)計語言有很多種。如程序設(shè)計語言有很多種。如BASICBASIC,F(xiàn)oxbaseFoxbase, C C語言,語言,C+C+,J+J+,VBVB等。為了實現(xiàn)算法中的等。為了實現(xiàn)算法中的 三種基本的邏輯結(jié)構(gòu):三種基本的邏輯結(jié)

5、構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)和循順序結(jié)構(gòu)、條件結(jié)構(gòu)和循 環(huán)結(jié)構(gòu)環(huán)結(jié)構(gòu),各種程序設(shè)計語言中都包含下列基本的,各種程序設(shè)計語言中都包含下列基本的 算法語句:算法語句: 輸入語句輸入語句 輸出語句輸出語句 賦值語句賦值語句 條件語句條件語句 循環(huán)語句循環(huán)語句 1.2.1基本算法語句基本算法語句 輸入語句、輸出語句和賦值語句輸入語句、輸出語句和賦值語句 例例1 :用描點法作函數(shù):用描點法作函數(shù) y=x3+3x2-24x+30的圖象時,需的圖象時,需 要求出自變量和函數(shù)的一組對應(yīng)值,編寫程序,分別計要求出自變量和函數(shù)的一組對應(yīng)值,編寫程序,分別計 算當(dāng)經(jīng)算當(dāng)經(jīng)=-5,-4,-3,-2,-1,0,1,2,3,4

6、,5時的函時的函 數(shù)值。數(shù)值。 算法:算法: S1:輸入一個自變量:輸入一個自變量X 值值 S2:計算:計算y=x3+3x2-24x+30 S3:輸出:輸出y 開始開始 輸入輸入X y=x3+3x2-24x+30 輸出輸出y 結(jié)束結(jié)束 程序框圖:程序框圖: 計算機程序:計算機程序: Input “x=“;x y=x3+3*x2-24*x+30 Print y end INPUT “x=”;x y=x3+3*x2- -24*x+30 PRINT x PRINT y END 程序程序: : -輸入語句輸入語句 -賦值語句賦值語句 -打印語句打印語句 -打印語句打印語句 -表示結(jié)束表示結(jié)束 輸出語句

7、輸出語句 輸出語句輸出語句 1、輸入語句:、輸入語句: 一般格式:一般格式: INPUT “提示信息提示信息“;變量;變量 程序框圖程序框圖 輸入變量的值 例:例:INPUT “a,b,c=“;a,b,c 2、輸出語句:、輸出語句: 一般格式:一般格式: PRINT “提示內(nèi)容提示內(nèi)容” ; 表達(dá)表達(dá) 式式 輸出表達(dá)式的值 例:例:PRINT “S=“ ; S 例例2 2 編寫程序,計算一個學(xué)生語文、數(shù)學(xué)、英語三編寫程序,計算一個學(xué)生語文、數(shù)學(xué)、英語三 門課程的總成績和平均成績,并輸出。門課程的總成績和平均成績,并輸出。 開始開始 輸入數(shù)學(xué)輸入數(shù)學(xué)a a 輸入語文輸入語文b b 輸入英語輸入英

8、語c c 總分總分s=a+b+cs=a+b+c 平均平均p=s/3p=s/3 輸出總分輸出總分s s 輸出平均分輸出平均分p p 結(jié)束結(jié)束 程序: INPUT “數(shù)學(xué)數(shù)學(xué)=”;a INPUT “語文語文=”;b INPUT “英語英語=”;c S=a+b+c P=(a+b+c)/3 PRINT “總分總分=”;s PRINT “平均分平均分=”;p END 程序框圖:程序框圖: INPUT “數(shù)學(xué)數(shù)學(xué),語文語文,英語英語”;a,b,c PRINT “總分總分=”;a+b+c PRINT “平均分平均分=”;(a+b+c)/3 END 3.3.賦值語句賦值語句 (1)賦值語句的一般格式賦值語句的

9、一般格式: 變量表達(dá)式變量表達(dá)式 (2)(2)賦值語句的作用賦值語句的作用是是: :先計算出賦值號右邊表達(dá)先計算出賦值號右邊表達(dá) 式的值式的值, ,然后把這個值賦給左邊的變量然后把這個值賦給左邊的變量, ,使該變量的使該變量的 值等于表達(dá)式的值。值等于表達(dá)式的值。 (3)(3)賦值語句中的賦值語句中的“”稱作稱作賦值號賦值號, ,與數(shù)學(xué)中的等與數(shù)學(xué)中的等 號的意義是不同的號的意義是不同的. .賦值號的左右兩邊不能對換賦值號的左右兩邊不能對換. . (4)(4)賦值語句左邊只能是變量名字而不是表達(dá)式賦值語句左邊只能是變量名字而不是表達(dá)式, , 如如:2=x:2=x是錯誤的是錯誤的; ;右邊表達(dá)式

10、可以是一個數(shù)據(jù)、右邊表達(dá)式可以是一個數(shù)據(jù)、 常量或算式;常量或算式; (5 5)對于一個變量可以多次賦值。)對于一個變量可以多次賦值。 3、賦值語句:、賦值語句: 一般格式:一般格式: 變量變量=表達(dá)式表達(dá)式 程序框圖程序框圖 變量變量=表達(dá)式表達(dá)式 說明:計算機執(zhí)行賦值語句時,先計算說明:計算機執(zhí)行賦值語句時,先計算”=“右右 邊的表達(dá)式的值,然后把這個值賦給邊的表達(dá)式的值,然后把這個值賦給”=“左邊左邊 的變量。的變量。 例:例:S=S+i A=A+1 判斷判斷:1. x=7+9 2. 7+9=x 3. x=x/3 4. a+b=c 5. c=a+b a=b=5 a=5 a=7 a=9 例

11、例3 給一個變量重復(fù)賦值。給一個變量重復(fù)賦值。 程序:程序: A = 10 A = A + 15 PRINT A END 例例4 交換兩個變量交換兩個變量A和和B的值,并輸出交換前后的值。的值,并輸出交換前后的值。 程序:程序: INPUT A INPUT B PRINT A,B X=A A=B B=X PRINT A,B END 已知華氏溫度和攝氏溫度的轉(zhuǎn)換公式是:已知華氏溫度和攝氏溫度的轉(zhuǎn)換公式是: (華氏溫度(華氏溫度32)59=攝氏溫度。攝氏溫度。 程序框圖:程序框圖: 開始開始 輸入華氏溫度輸入華氏溫度F C=(F32) 5/9 輸出輸出 C 結(jié)束結(jié)束 程序:程序: INPUT “F

12、=”;F C=(F32)* 5/9 PRINT “C=”;C END 書書P24練習(xí)練習(xí)1: 書書P24練習(xí)練習(xí)2: 開始開始 輸入非零數(shù)輸入非零數(shù) a,b x1=a+b 輸出輸出x1,x2,x3,x4 結(jié)束結(jié)束 x2=a*b x4=a/b x3=a-b 程序:程序: INPUT ”輸入兩個非零實數(shù)輸入兩個非零實數(shù)a,b” ; a , b x1=a+b x2=a*b x3=a-b x4=a/b PRINT x1,x2,x3,x4 END 若三角形的三邊分別是若三角形的三邊分別是a,b,c,借助三角型面積公式,借助三角型面積公式 (海倫(海倫-秦九韶公式)秦九韶公式) )()()(,() 2 a

13、bc Sp papbpcp 編寫一個求三角形面積的程序。編寫一個求三角形面積的程序。 程序:程序: INPUT “a,b,c=”;a,b,cINPUT “a,b,c=”;a,b,c p=(a+b+c)/2p=(a+b+c)/2 S=SQR(pS=SQR(p* *(p-a)(p-a)* *(p-b)(p-b)* *(p-c)(p-c) PRINT “PRINT “三角形面積三角形面積S=”;SS=”;S ENDEND 程序框圖:程序框圖: 開始開始 2 abc p ()()()sp p a p b p c 輸出輸出s 結(jié)束結(jié)束 ( ),SQR xx 書書P24練習(xí)練習(xí)3: 書書P26練習(xí)練習(xí)4:

14、 INPUT “請輸入水果糖重量請輸入水果糖重量a=” ; a INPUT “請輸入奶糖重量請輸入奶糖重量b=” ; b INPUT “請輸入果仁巧克力重量請輸入果仁巧克力重量c=” ; c M=a*10.4+b*15.6+c*25.2 PRINT “您應(yīng)付您應(yīng)付(元元):” ; M END 小結(jié)小結(jié) 1、輸入語句、輸出語句和賦值語句的功能與、輸入語句、輸出語句和賦值語句的功能與 表示方法表示方法 2、能夠設(shè)計程序,并準(zhǔn)確運用輸入語句、輸出、能夠設(shè)計程序,并準(zhǔn)確運用輸入語句、輸出 語句和賦值語句語句和賦值語句 語句語句一般格式一般格式主要功能主要功能說明說明 輸入語句輸入語句 輸出語句輸出語句

15、 賦值語句賦值語句 INPUT “提示內(nèi)容提示內(nèi)容”;變量變量 PRINT “提示內(nèi)容提示內(nèi)容”;表達(dá)式表達(dá)式 變量表達(dá)式變量表達(dá)式 可對程序中可對程序中 的變量賦值的變量賦值 可輸出表達(dá)式可輸出表達(dá)式 的值,計算的值,計算 可對程序中可對程序中 的變量賦值,的變量賦值, 計算計算 (1)提示內(nèi)容和它后面)提示內(nèi)容和它后面 的的“;”可以省略可以省略 (2)一個語句可以給)一個語句可以給多個變多個變 量賦值量賦值,中間用,中間用“,”分隔分隔 (3)無計算功能無計算功能 (1)表達(dá)式可以是變量,)表達(dá)式可以是變量, 計算公式,或系統(tǒng)信息計算公式,或系統(tǒng)信息 (2)一個語句可以輸入多)一個語句可

16、以輸入多 個表達(dá)式,中間用個表達(dá)式,中間用“,”分隔分隔 (3)有計算功能有計算功能 (1)“=”的的右側(cè)右側(cè)必須是表達(dá)必須是表達(dá) 式,式,左側(cè)左側(cè)必須是變量必須是變量 (2)一個語句只能給一個)一個語句只能給一個 變量賦變量賦 (3)有計算功能有計算功能 1.2.2基本算法語句基本算法語句 條件語句條件語句 復(fù)習(xí)鞏固 1 1、輸入語句、輸出語句和賦值語句對應(yīng)、輸入語句、輸出語句和賦值語句對應(yīng) 于算法中的哪種結(jié)構(gòu)?這三種語句的一于算法中的哪種結(jié)構(gòu)?這三種語句的一 般格式是什么?般格式是什么? 順序結(jié)構(gòu)順序結(jié)構(gòu) 輸入語句輸入語句 輸出語句輸出語句 賦值語句賦值語句 INPUT “ “提示內(nèi)容提示

17、內(nèi)容”; ;變量變量 PRINT “ “提示內(nèi)容提示內(nèi)容”; ;表達(dá)式表達(dá)式 變量表達(dá)式變量表達(dá)式 IF 條件條件 THEN 語句體語句體1 ELSE 語句體語句體2 END IF IF 條件條件 THEN 語句體語句體 END IF 滿足條件?滿足條件? 語句體語句體 是 否 滿足條件?滿足條件? 語句體語句體1語句體語句體2 是 否 2、條件結(jié)構(gòu)常用的程序語言和格式 (單分支條件結(jié)構(gòu))單分支條件結(jié)構(gòu)) (雙分支條件結(jié)構(gòu))雙分支條件結(jié)構(gòu)) 例例5:編寫一程序,求實數(shù):編寫一程序,求實數(shù)X的絕對值。的絕對值。 X (X0) 算法分析:算法分析:因為實數(shù)因為實數(shù)X的絕對值的絕對值|X|= -X

18、(X0) 算法步驟:算法步驟: S1:輸入一個實數(shù):輸入一個實數(shù)X S2:判斷:判斷X的符號,若的符號,若X0, 則輸出則輸出X;否則輸出;否則輸出X 程序框圖: 開始開始 輸入輸入X X0? 輸出輸出X輸出輸出X 結(jié)束結(jié)束 Y N 程序程序: INPUT X IF X=0 THEN PRINT X ELSE PRINT -X END IF END 讀下面的程序,你能得出什么結(jié)論?讀下面的程序,你能得出什么結(jié)論? ENDEND INPUT “x=”INPUT “x=”;x x IF xIF x0 THEN0 THEN x= -xx= -x PRINT xPRINT x END IFEND IF

19、 x0 THEN y=1 ELSE y=0 END IF (1)IF x0 THEN x=ABS(x) END IF PRINT “x的絕對值為:的絕對值為:”; x 開始 X=abs(x) 結(jié)束 開始 y=1y=0 結(jié)束結(jié)束 Y N Y N 輸出輸出x X0? 例例6 編寫程序,輸入一元二次方程編寫程序,輸入一元二次方程 的系數(shù),輸出的系數(shù),輸出 它的實數(shù)根。它的實數(shù)根。 自然語言描述自然語言描述: 第一步:第一步:輸入輸入a,b,c 第二步:第二步:計算判別式計算判別式m 0 2 cbxax 第四步:第四步:判斷判斷m=0是否成立。若是否成立。若 是,則輸出是,則輸出x1=x2=p;否則否

20、則x1=p+q X2=p-q,并輸出并輸出x1,x2. 第三步:第三步:判斷判斷m0是否成立是否成立 若是若是,則計算則計算p= ,q= 否則輸出否則輸出“方程無實數(shù)根方程無實數(shù)根”, 結(jié)束算法。結(jié)束算法。 2 m a 2 b a 開始 輸入a,b,c m=b2-4ac m0? p=-b/(2a) q= m=0 X1=p+q X2=p-q 方程無實根輸出x1,x2輸出p 結(jié)束 2 m a Y N N Y 程序:程序: INPUT “A,B,C=”;a,b,c m=b2-4*a*c IF m=0 then p=-b/(2a) q=SQR(m)/(2*a) IF m=0 THEN PRINT “X

21、1=X2=“;p ELSE PRINT “x1,x2=“;p+q,p-q END IF ELSE PRINT “方程無實根方程無實根“ END IF END 開始 輸入a,b,c m=b2-4ac m0? p=-b/(2a) q= m=0 X1=p+q X2=p-q 方程無實根輸出x1,x2輸出p 結(jié)束 2 m a Y N N Y 例例7 7 編寫程序編寫程序, ,使得任意輸入使得任意輸入3 3個整數(shù)按大到小的順序輸出。個整數(shù)按大到小的順序輸出。 算法分析:算法分析: 算法思想:算法思想:3 3個數(shù)兩兩比較,確定大小。按個數(shù)兩兩比較,確定大小。按a a、b b、c c輸入,輸入, 要按要按a

22、a、b b、c c輸出,關(guān)鍵要找到最大值,將它賦值給輸出,關(guān)鍵要找到最大值,將它賦值給a a,中,中 值賦給值賦給b b,最小值賦給,最小值賦給c c。 第一步第一步 輸入輸入3 3個整數(shù)個整數(shù)a a、b b、c c 第二步第二步 將將a a與與b b比較,并把小者賦給比較,并把小者賦給b b,大的賦給,大的賦給a a; 第三步第三步 將將a a與與c c比較,并把小者賦給比較,并把小者賦給c c,大的賦給,大的賦給a a 第四步第四步 將將b b與與c c比較,并把小者賦給比較,并把小者賦給c c,大的賦給,大的賦給b b 第五步第五步 按順序輸出按順序輸出a a,b b,c c INPUT

23、 “a,b,c=”;a,b,c IF b a THEN t = a a = b b = t END IF IF c a THEN t = a a = c c = t END IF IF c b THEN t = b b = c c = t END IF PRINT a,b,c END 相應(yīng)的相應(yīng)的QBASIC程序:程序: 開始 t=a,a=b,b=t t=a,a=c,c=t t=b,b=c,c=t 輸入a,b,c 輸入a,b,c ba? ca? cb? 結(jié)束 是是 是是 否否 否否 是是 否否 對應(yīng)的流程圖:對應(yīng)的流程圖: IF 條件條件 THEN 語句語句1 ELSE 語句語句2 END I

24、F 小結(jié):條件結(jié)構(gòu)的框圖表示: 條件條件? 否否 是是 語句語句 條件條件? 語句語句2 否否 是是 語句語句1 IF 條件條件 THEN 語句語句 END IF 運算符運算符功能功能舉例舉例數(shù)學(xué)表達(dá)式數(shù)學(xué)表達(dá)式 關(guān)關(guān) 系系 運運 算算 符符 小于小于abab =小于或等于小于或等于a大于大于abab =大于或等于大于或等于a=bb =等于等于a=ba=b 不等于不等于aba b 邏邏 輯輯 運運 算算 符符 AND且且x11x5 OR或或x3x3 NOT非非NOT xax a 附:條件語句的條件表達(dá)式中常用連接符如下附:條件語句的條件表達(dá)式中常用連接符如下 運算符運算符功能功能舉例舉例 算算

25、 術(shù)術(shù) 運運 算算 符符 + 加加 - 減減 * 乘乘 / 除除 5/2=2.5 整除整除 52=2 MOD 求余求余 5 MOD 3=2 乘方乘方 32=9 算術(shù)表達(dá)式運算的優(yōu)先順序:算術(shù)表達(dá)式運算的優(yōu)先順序: 括號 函數(shù) 乘方 乘、除 加、減 常用標(biāo)準(zhǔn)函數(shù)常用標(biāo)準(zhǔn)函數(shù) 功功 能能 SIN(X)SIN(X)求求X X的正弦值的正弦值 X X單位為弧度單位為弧度 CON(X)CON(X)求求X X的余弦值的余弦值 X X單位為弧度單位為弧度 SQR(X)SQR(X)求求X X的平方根的平方根 ABS(X)ABS(X)求求X X的絕對值的絕對值 如:如:SQR(9)=3SQR(9)=3 如:如:

26、ABS(-2)=2ABS(-2)=2 INT(X)INT(X)求不大于求不大于X的最大整數(shù)的最大整數(shù) 如如INT(2.71)=2, INT(-2.71)=-3 P29 練習(xí)練習(xí) 開始開始 輸入輸入a a,b b,c c a+ba+bc c,a+c a+c b b, b+c b+c a a是否同時成立?是否同時成立? 存在這樣的存在這樣的 三角形三角形 不存在這樣不存在這樣 的三角形的三角形 結(jié)束結(jié)束 否否 是是 (1) 該程序框圖所表示的算法是作 用是什么?并根據(jù)程序框圖寫出相 應(yīng)的程序。 程序程序: INPUT a,b,c IF a+bc and a+cb and b+ca THEN PRI

27、NT “存在這樣的三角形存在這樣的三角形” ELSE PRINT “不存在這樣的三角形不存在這樣的三角形” ENDIF END 【課堂練習(xí)】【課堂練習(xí)】 2.2.課本課本P29P29頁頁T2T2. .讀程序讀程序, ,說明程序的運行過程說明程序的運行過程. . INPUT “x=:”;x IF 9x AND x100 THEN a=x10 b=x MOD 10 x=10b+a PRINT x END IF END 如果有兩個或是兩個以上的如果有兩個或是兩個以上的 并列條件時,用并列條件時,用“AND”AND”把把 它們連接起來。它們連接起來。 “”“”用來取商用來取商. .此處表示此處表示 x

28、 x除以除以1010的商的商. . “MOD”“MOD”用來取余數(shù)用來取余數(shù). .此處表此處表 示示x x除以除以1010所得余數(shù)為所得余數(shù)為b.b. 問題問題如輸入的數(shù)如輸入的數(shù)x=86,則輸出則輸出 的結(jié)果是什么的結(jié)果是什么?68 此程序用于交換一個兩位數(shù)的此程序用于交換一個兩位數(shù)的 個位和十位數(shù)字個位和十位數(shù)字. . (書書P29練習(xí)練習(xí)3).編寫一個程序編寫一個程序,判斷任意輸入的整數(shù)的奇偶性判斷任意輸入的整數(shù)的奇偶性 開始開始 輸入一整數(shù)輸入一整數(shù)a M=0 M=a MOD 2 輸出輸出a為偶數(shù)為偶數(shù)輸出輸出a為奇數(shù)為奇數(shù) 結(jié)束結(jié)束 Y N 程序程序: INPUT “a=“ ; a

29、M= a MOD 2 IF M=0 THEN PRINT “a為偶數(shù)為偶數(shù)” ELSE PRINT “a為奇數(shù)為奇數(shù)” END IF END (書書P29練習(xí)練習(xí)4).閏年是指能被閏年是指能被4整除但不能被整除但不能被100整除整除,或者能被或者能被 400整除的年份整除的年份,編寫一個程序編寫一個程序,判斷輸入的年份是否為閏年判斷輸入的年份是否為閏年? 開始 輸入年份y A=y MOD 4 B=y MOD 100 C=y MOD 400 A=0且B0 C=0 是閏年是閏年 結(jié)束 不是閏年 程序程序: N Y Y N INPUT “Please input a year:”;y b=y MOD

30、 4 c=y MOD 100 d=y MOD 400 IF b=0 AND c0 THEN PRINT “Leap year.” ELSE IF d=0 THEN PRINT “Leap year.” ELSE PRINT “Not leap year.” END IF END IF END 表示表示c0c0 練習(xí):己知函數(shù)練習(xí):己知函數(shù) ,畫出程序框,畫出程序框 圖,并編寫一個程序。圖,并編寫一個程序。 2 2 1 (0) 25 (0) xx xx f f ( (x x) )= = 開始 輸入X X0 Y N y=X2-1 y=2X2-5 輸出y 結(jié)束 Input “x=“;x If x=0

31、 then y=x2-1 else y=2x2-5 end if print y end 開始開始 X1? 是是 y=x 否否 1X10? 是是 y=2x-1 否否 y=3x-11 輸出輸出y 結(jié)束結(jié)束 輸入輸入x (P33頁頁B組組T3) : INPUT “x=”INPUT “x=”;x x PRINT “y=”;yPRINT “y=”;y ENDEND IF x1 THENIF x=1 AND x=1 AND x10 THEN y=2y=2* *x-1x-1 y=3y=3* *x-11x-11 END IFEND IF END IFEND IF 6.(P33頁頁B組組T3) INPUT “

32、x=”;x IF x=1 AND x10 THEN y=2x-1 ELSE y=3x-11 END IF END IF PRINT“y=”;y END 參考答案:參考答案: .(P50頁頁A組組T3) :拔打市內(nèi)電話時,如果通話時間不超過:拔打市內(nèi)電話時,如果通話時間不超過3分鐘,分鐘, 則收取通話費則收取通話費0.2元,如果通話時間超過元,如果通話時間超過3分鐘,則超過部分以分鐘,則超過部分以0.1 元元/分鐘收取通話費分鐘收取通話費(t分鐘計,不足分鐘計,不足1分鐘按分鐘按1分鐘計分鐘計)。問:如何設(shè)。問:如何設(shè) 計一個計算通話費的算法?畫出程序框圖,并寫出程序。計一個計算通話費的算法?畫

33、出程序框圖,并寫出程序。 第一步:輸入通話時間第一步:輸入通話時間t 第二步:如果第二步:如果00 N Y c=0.2C=0.2+0.1(t-3) 輸出c 結(jié)束 input “通話時間為:通話時間為:”;t if t0 then c=0.2 else c=0.2+0.1*(t-3) end if print “通話費用為通話費用為”;c end 1.2.3基本算法語句基本算法語句 循環(huán)語句循環(huán)語句 溫故而知新溫故而知新 1、順序結(jié)構(gòu)常用的程序語言和格式、順序結(jié)構(gòu)常用的程序語言和格式 2、條件結(jié)構(gòu)常用的程序語言和格式、條件結(jié)構(gòu)常用的程序語言和格式 輸入語句輸入語句 INPUT “提示文字提示文字

34、”;變量列表;變量列表 輸出語句輸出語句 PRINT “提示文字提示文字”;變量列表;變量列表 賦值語句賦值語句 變量變量=表達(dá)式表達(dá)式 (1) IF 條件成立條件成立 THEN 語句語句1 ELSE 語句語句2 END IF (2)IF 條件成立條件成立 THEN 語句語句 END IF a=2 b=3 IF ab THEN t=a a=b b=t END IF PRINT “a=”; a PRINT “b=”; b END A. a=2 , b=3 B. a=3 , b=3 C. a=2 , b=2 D. a=3 , b=2 D 1. 1. 下列程序運行后的結(jié)果是(下列程序運行后的結(jié)果是(

35、 ) 2. 2.右邊給出的是用條件右邊給出的是用條件 語句編寫的一個程序,語句編寫的一個程序, 根據(jù)該程序回答:根據(jù)該程序回答: INPUT x IF x3 THEN y=x*x-1 ELSE y=0 END IF END IF PRINT y END (1 1)若輸入)若輸入5 5,則輸出結(jié)果,則輸出結(jié)果 是是 ; (2 2)若輸入)若輸入2 2,則輸出結(jié)果,則輸出結(jié)果 是是 ; 2 2 (3) 0(3) 1(3) x x yx xx 24 4 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu): 在一些算法中,從某處開始,按照一定條件,在一些算法中,從某處開始,按照一定條件, 反復(fù)執(zhí)行某些步驟的情況,這就是循環(huán)結(jié)構(gòu)。反復(fù)執(zhí)

36、行某些步驟的情況,這就是循環(huán)結(jié)構(gòu)。 反復(fù)執(zhí)行的步驟稱為循環(huán)體。反復(fù)執(zhí)行的步驟稱為循環(huán)體。 兩種循環(huán)結(jié)構(gòu)有什么差別?兩種循環(huán)結(jié)構(gòu)有什么差別? 循環(huán)體循環(huán)體 滿足條件滿足條件? ? 是是 否否 直到型直到型循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) 循環(huán)體循環(huán)體 滿足條件滿足條件? ? 是是 否否 當(dāng)型當(dāng)型循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) 先執(zhí)行循環(huán)體,然后再檢查條先執(zhí)行循環(huán)體,然后再檢查條 件是否成立,如果不成立就重復(fù)執(zhí)行件是否成立,如果不成立就重復(fù)執(zhí)行 循環(huán)體,直到條件成立退出循環(huán)。循環(huán)體,直到條件成立退出循環(huán)。 先執(zhí)行先執(zhí)行 后判斷后判斷 循環(huán)體循環(huán)體 滿足條件滿足條件? ? 是是 否否 直到型直到型循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) UntilUn

37、til(直到型)循環(huán)(直到型)循環(huán) 兩種循環(huán)結(jié)構(gòu)的差別:兩種循環(huán)結(jié)構(gòu)的差別: 先判斷指定的條件是否為真,先判斷指定的條件是否為真, 若條件為真,執(zhí)行循環(huán)條件,條件若條件為真,執(zhí)行循環(huán)條件,條件 為假時退出循環(huán)為假時退出循環(huán)。 先判斷先判斷 后執(zhí)行后執(zhí)行 循環(huán)體循環(huán)體 滿足條件滿足條件? ? 是是 否否 當(dāng)型當(dāng)型循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) WhileWhile(當(dāng)型)循環(huán)(當(dāng)型)循環(huán) 即即WHILEWHILE語句和語句和UNTILUNTIL語句。語句。 (1)WHILE(1)WHILE語句的一般格式是語句的一般格式是: : WHILE WHILE 條件條件 循環(huán)體循環(huán)體 WENDWEND 其中循環(huán)體是由計

38、算機反復(fù)執(zhí)行的一組語句其中循環(huán)體是由計算機反復(fù)執(zhí)行的一組語句 構(gòu)成的。構(gòu)成的。WHLIEWHLIE后面的后面的“條件條件”是用于控制計算機是用于控制計算機 執(zhí)行循環(huán)體或跳出循環(huán)體的。執(zhí)行循環(huán)體或跳出循環(huán)體的。 WHILEWHILE當(dāng)當(dāng)時候時候 WENDWEND朝朝方向行走方向行走 滿足條件?滿足條件? 循環(huán)體循環(huán)體 是是 否否 當(dāng)型循環(huán)結(jié)構(gòu)當(dāng)型循環(huán)結(jié)構(gòu) (2)UNTIL(2)UNTIL語句的一般格式是語句的一般格式是: : DODO 循環(huán)體循環(huán)體 LOOP UNTIL LOOP UNTIL 條件條件 循環(huán)體循環(huán)體 是是 否否 滿足條件?滿足條件? 直到型循環(huán)結(jié)構(gòu)直到型循環(huán)結(jié)構(gòu) DODO做什么做

39、什么 LOOP UNTILLOOP UNTIL繞環(huán)回線走繞環(huán)回線走, ,直到達(dá)到某種直到達(dá)到某種 條件為止條件為止 思考思考: :參照其直到型循環(huán)結(jié)構(gòu)對應(yīng)的程序框圖參照其直到型循環(huán)結(jié)構(gòu)對應(yīng)的程序框圖, ,說說說說 計算機是按怎樣的順序執(zhí)行計算機是按怎樣的順序執(zhí)行UNTILUNTIL語句的?語句的? 先執(zhí)行先執(zhí)行 后判斷后判斷 循環(huán)體循環(huán)體 滿足條件滿足條件? ? 是是 否否 直到型直到型循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) 兩種循環(huán)結(jié)構(gòu)的差別:兩種循環(huán)結(jié)構(gòu)的差別: 先判斷先判斷 后執(zhí)行后執(zhí)行 循環(huán)體循環(huán)體 滿足條件滿足條件? ? 是是 否否 當(dāng)型當(dāng)型循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) WHILE 條件條件 循環(huán)體循環(huán)體 WEND

40、DO 循環(huán)體循環(huán)體 LOOP UNTIL 條件條件 練習(xí):編寫計算機程序來計算練習(xí):編寫計算機程序來計算1+2+1001+2+100的值的值 i=100? i=1 開始開始 輸出輸出s 結(jié)束結(jié)束 否否 是是 s=0 i=i+1 s=s+i i=1 s=0 WHILE i100? 否否 是是 程序框圖程序框圖 程序程序 i=1 s=0 DO s=s+i i=i+1 LOOP UNTIL i100 PRINT s END UNTILUNTIL語句語句 循循 環(huán)環(huán) 體體 i=1 s=0 DO s=s+i i=i+1 LOOP UNTIL i100 PRINT s END UNTILUNTIL語句語句

41、 i=1 s=0 WHILE i100 PRINT S END S=S+i2 是是 開始開始 結(jié)束結(jié)束 i=1 S=0 i=i+1 S=S+i 輸出輸出S i100? 否否 直到型直到型 S=S+i2 變式訓(xùn)練變式訓(xùn)練(2):(2): 編寫程序求編寫程序求: : 的值的值. . 如何修改如何修改? ?UNITLUNITL語句語句 i=1 S=0 DO S=S+i i=i+1 LOOP UNTIL i100 PRINT S END S=S+1/i 是是 開始開始 結(jié)束結(jié)束 i=1 S=0 i=i+1 S=S+i 輸出輸出S i100? 否否 直到型直到型 S=S+ 1111 1 234100 1

42、 i 開始開始 i=1 S=0 i100? 是是 S=S+i i=i+1 否否 輸出輸出S 結(jié)束結(jié)束 當(dāng)型循環(huán)當(dāng)型循環(huán) 結(jié)構(gòu)結(jié)構(gòu) 變式訓(xùn)練變式訓(xùn)練(3):(3): 編寫程序求編寫程序求:1+2+3+4+5+:1+2+3+4+5+n n的值的值. . 如何修改如何修改? ? 輸入輸入n WHILEWHILE語句語句 i=1 S=0 WHLIE i=100 S=S+i i=i+1 WEND PRINT S END INPUT “n=”;n in? n 開始開始 i=1 S=0 i100? 是是 S=S+i i=i+1 否否 輸出輸出S 結(jié)束結(jié)束 當(dāng)型循環(huán)當(dāng)型循環(huán) 結(jié)構(gòu)結(jié)構(gòu) 變式訓(xùn)練變式訓(xùn)練(4):(4): 編寫程序求編寫程序求:n!=1:n!=12 23 34 45 5n n的值的值. . 如何修改如何修改? ? 輸入輸入n WHILEWHILE語句語句 i=1 S=0 WHLIE i100 PRINT S END

溫馨提示

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

評論

0/150

提交評論