




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、分支結(jié)構(gòu)(選擇結(jié)構(gòu))布爾運(yùn)算(邏輯運(yùn)算) 要判斷“ A>B”是否成立,其結(jié)果不是一個(gè)具體的數(shù)值,而是“真”或“假”,即“是”或“否”的問題。這類問題在我們?nèi)粘I钪惺呛芏嗟模T如這類判斷的問題,其結(jié)果都是只有兩個(gè):真或假,這就是我們所說的布爾運(yùn)算(邏輯運(yùn)算)。 · 布爾常量和布爾變量 布爾型的常量或變量的值只有兩個(gè): TRUE(真)和 FALSE(假)。要把一個(gè)變量定義成布爾類型,用的數(shù)據(jù)類型是: BOOLEAN。例如程序:var a,b:boolean;begina:=true;b:=false;end. · 布爾表達(dá)式 布爾表達(dá)
2、式有以下兩種操作:· 關(guān) 系運(yùn)算符: =; <> > < >=; <=,是用來進(jìn)行關(guān)系操作(對(duì)比)運(yùn)算的符號(hào),其結(jié)果為 BOOLEAN型。如: 2=3,其結(jié)果為 FALSE。 *注意:這里的“ =”與賦值符號(hào)“: =”是完全不同的,其作用和結(jié)果均不同。 · 邏輯運(yùn)算符: AND(邏輯和); OR(邏輯或); NOT(邏輯非)。是用來進(jìn)行邏輯值的 邏輯運(yùn)算的。如:( 2=3) AND ( 4<>3),值為 FALSE。布爾表達(dá)式的運(yùn)算順序是:() à函數(shù) à NOT à *,/.DIV,MOD,AN
3、D,+,-,OR à >,<,>=,<=,<>,= 。 布爾表達(dá)式中的邏輯運(yùn)算如下表所示: a和 b 均為布爾型表達(dá)式或常 /變量 . abA and bA or bNot aNot btruefalsefalsetruefalseTruetruetruetruetruefalseFalsefalsetruefalsetruetrueFalsefalsefalsefalsefalsetrueTrue由上可以看出:· 用 AND運(yùn)算時(shí),左右兩個(gè)值同為 TRUE時(shí),運(yùn)算結(jié)果才為 TRUE,即兩個(gè)條件同時(shí)滿足,結(jié)果才為 TRUE。這就是我們平常
4、所說的“和”。 · 用 OR運(yùn)算時(shí),左右兩個(gè)值只需有一個(gè)為 TRUE,運(yùn)算結(jié)果就為 TRUE,即兩個(gè)條件滿足其中一個(gè),結(jié)果就為 TRUE。這就是我們平常所說的“或”。 · 用 NOT運(yùn)算時(shí),只是把其后的邏輯值取反,即“非”。 · 例: 例 4、 1 Program q41;Var a,b,c,d:integer;P:boolean;BeginA:=1;B:=2;C:=3;D:=4;P:=(a=b);Writeln(p);P:=(a<b) and (c<d);Writeln(p);Writeln(a>d) or (c>b);End.
5、; 說明四個(gè)整數(shù)型變量說明一個(gè)布爾型變量程序開始賦值賦值賦值賦值把( A=B)這個(gè)邏輯運(yùn)算的結(jié)果賦給 P,即 P的值為 FALSE打印 P把 (a<b) and (c<d)這個(gè)邏輯運(yùn)算的結(jié)果賦給 P打印 P打印 (a>d) or (c>b)這個(gè)邏輯運(yùn)算的結(jié)果程序結(jié)束程序運(yùn)行結(jié)果是:falsetruetrue由上可以看出:邏輯運(yùn)算中的關(guān)系運(yùn)算均用括號(hào)“()”括起來。關(guān)系運(yùn)算 /邏輯運(yùn)算的結(jié)果也是一個(gè)值( BOOLEAN型),所有布爾運(yùn)算也是表達(dá)式,可以賦給一個(gè)變量,也可以直接用輸出語句輸出。打印輸出時(shí),屏幕上就顯示“ false”或“ true”。條件 ( IF ) 語句
6、 條件語句是用一個(gè)布爾表達(dá)式的值來決定程序的走向。即程序提供一個(gè)分支,由布爾表達(dá)式的值來決定程序究競(jìng)運(yùn)行哪個(gè)分支。即程序已經(jīng)不是順序結(jié)構(gòu)了,而是提供了一個(gè)分支結(jié)構(gòu)。每次只可能運(yùn)行其中的一個(gè)分支。如下圖所示:條件語句有兩種格式:1、 if <布爾表達(dá)式 > then <語句 >;2、 if <布爾表達(dá)式 > then <語句 1> else <語句 2>;格式 1的作用是:如果布爾表達(dá)式值為 TRUE(即該條件滿足),則運(yùn)行語句,否則不運(yùn)行任何語句。格式 2的作用是:如果布爾表達(dá)式值為 TRUE(即該條件滿足),由運(yùn)行語句
7、1,否則(即布爾值為 FALSE,亦即條件不滿足)就運(yùn)行語句 2。注意:只有條件語句結(jié)束時(shí)才有分號(hào)。注意:如果條件語句中的分支語句不止一句,可用“ begin end;”來框住,加以區(qū)別。如:以下兩個(gè)程序都為從鍵盤輸入 1個(gè)整數(shù),打印出它的算術(shù)平方根。 例 4、 2:Program q421;Var a:integer; BeginReadln(a);If (a<0) thenBeginWriteln( WRONG! );End elseBeginWriteln(a); Writeln(sqrt(a):8:2);End;End. Program q421;Var a:integer; B
8、egin Readln(a); If (a<0) then Writeln( WRONG! ) else Writeln(sqrt(a):8:2); End. 條件語句的嵌套:條件語句是可以嵌套的,例如:if a>0 then if a>1 then else else .;上述語句看起來無法理解,但如果我們把它改寫為以下形式時(shí),就一目了然了:if a>0 then beginif a>1 then beginend else beginendelse beginend; 也就是說,第二個(gè) IF語句只是第一個(gè) IF語句中的一部分,即嵌入的一個(gè) IF語句。例:輸 入
9、一個(gè)年份,判斷它是否閏年。我們知道,每四年中有一年是閏年,即有 366天,而其余三年是平年,只有 365天,而按照規(guī)定: 1、如果哪一年的年份能被 4整除,則該年一般為閏年; 2、這樣,每 100年又會(huì)少一天,所以又規(guī)定如果該年能被 4整除,又能被 100整除,則認(rèn)為該年不是閏年,而是平年; 3、這樣,每 400年又會(huì)多出一天,所以又規(guī)定,如果哪一年能被 400整除,則該年又是閏年。由上可知: 1980, 1996, 1984年均為閏年, 1900年為平年,而 2000年為閏年。程序如下: 例 4、 3Program q43;Var y:integer;Begin Readln(y); if
10、(y mod 4=0) then begin if (y mod 100=0) then begin if (y mod 400=0) then begin writeln('run'); end else begin writeln('ping'); end; end else begin writeln('run'); end; end else begin writeln('ping'); end;end.多分支語句IF語句只能使程序有兩個(gè)分支,當(dāng)遇到需要有兩個(gè)以上分支時(shí), IF語句就很不適用了,這時(shí)我們可以用 CASE語句
11、,它能使程序有很多個(gè)分支。其效果如下圖:CASE 表達(dá)式 OF常量1:語句序列1;常量2:語句序列2;常量N:語句序列N;else 語句序列N+1;END;其中語句序列如果只有一句,可直接寫在常量后的冒號(hào)后;如果語句序列有很多句,則應(yīng)該用 BEGIN END加以框住。 CASE語句的作用是,根據(jù)表達(dá)式,表達(dá)式可以有多個(gè)值,分別對(duì)應(yīng)于常量 1、 2等值時(shí),就運(yùn)行該常量后所對(duì)應(yīng)的語句。例:輸入 1到 7之間的某個(gè)整數(shù),打印出其對(duì)應(yīng)的星期的英語名: 例 4、 4:program q44;var n:integer;beginwrite(n=);readln(n);case n of1:writeln
12、(Monday);2:writeln(Tuesday);3:writeln(Wednseday);4:writeln(Thursday);5:writeln(Friday);6:writeln(Saturday);7:writeln(Sunday);else writeln(WORNG!);end;end.例:輸入一個(gè)學(xué)生的數(shù)值化成績(jī),把它轉(zhuǎn)化為等級(jí)化成績(jī)。即 100-90是 A, 89-80是 B, 79-70是 C, 69-60是 D, 59-0是 E。Program q44;Var s:integer; G:char;Begin Write(Input the score:); Read
13、ln(s); Case s div 10 of 10,9:g:=A; 8:g:=B; 7:g:=C; 6:g:=D; else g:=E; end; writeln(s, ,g);end. 用 S DIV 10這個(gè)表達(dá)式作條件;當(dāng) S DIV 10等于 10或 9時(shí),表示 S是 90至于 100之間的值練 習(xí) 1、 設(shè)X,Y,Z的值分別是FALSE,TRUE,F(xiàn)LASE。寫出下列邏輯表達(dá)式的值:not x and not y;true and x or y;(x and z) or (z and y);x or z and y;2、 編寫一個(gè)程序,功能是從鍵盤輸入一個(gè)整
14、數(shù),判斷它是否二位數(shù),如果是,就打印它,然后結(jié)束程序,否則繼續(xù)要求輸入數(shù)。3、 編寫一個(gè)程序,功能是從鍵盤輸入三個(gè)整數(shù),打印出其中最大的一個(gè)值。4、從鍵盤讀入一個(gè)數(shù),判斷它的正負(fù)。是正數(shù),則輸出"+",是負(fù)數(shù),則輸出"-"5、輸入a,b,c三個(gè)不同的數(shù),將它們按由小到大的順序輸出6、鐵路托運(yùn)行李規(guī)定:行李重不超過50公斤的,托運(yùn)費(fèi)按每公斤0.15元計(jì)費(fèi);如超50公斤,超過部分每公斤加收0.10元。編一程序完成自動(dòng)計(jì)費(fèi)工作。7、打印某年某月有多少天。(提示:A、閏年的計(jì)算方法:年數(shù)能被4整除,并且不能被100整除;或者能被400整除的整數(shù)年份。B、利用MO
15、D運(yùn)算可以判斷一個(gè)數(shù)能否被另一個(gè)數(shù)整除) 8、某超市為了促銷,規(guī)定:購(gòu)物不足50元的按原價(jià)付款,超過50不足100的按九折付款,超過100元的,超過部分按八折付款。編一程序完成超市的自動(dòng)計(jì)費(fèi)的工作。9、 編寫一個(gè)程序,功能是從鍵盤輸入112中的某一個(gè)數(shù)字,由電腦打印出其對(duì)應(yīng)的月份的英語名稱。10、 以下程序的功能是從鍵盤輸入一個(gè)式子,它只有三個(gè)字符,第一個(gè)及第三個(gè)都是數(shù)字,中間那個(gè)是運(yùn)算符,程序能把它的結(jié)果打印出來。試在程序空中填上相應(yīng)的語句。注意:計(jì)算機(jī)是不懂得把輸入的字符串進(jìn)行計(jì)算的,我們必須自己動(dòng)手把其中的數(shù)字轉(zhuǎn)化成數(shù)值型的數(shù)據(jù),這其中我們使用了VAL函數(shù),如程序中 的:Val(s1,a,c),是把
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人承包施工安全合同書樣本
- 丙肝職業(yè)暴露課件
- 世界名城介紹
- 與靜療有關(guān)的課件
- 餐廳裝修半包合同細(xì)則
- 寧波幼兒師范高等專科學(xué)校《邏輯學(xué)(批判性思維)》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇省徐州市睢寧縣第一中學(xué)2024-2025學(xué)年高考第一次模擬考試英語試題含解析
- 不動(dòng)產(chǎn)課件教學(xué)課件
- 南昌健康職業(yè)技術(shù)學(xué)院《中藥藥劑學(xué)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西醫(yī)科大學(xué)晉祠學(xué)院《仿真實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025東風(fēng)汽車校招人才測(cè)評(píng)題庫(kù)
- 2024年四川宜賓五糧液股份有限公司招聘筆試真題
- 吉林2025年03月長(zhǎng)春新區(qū)面向社會(huì)公開選聘8名各產(chǎn)業(yè)招商辦公室負(fù)責(zé)人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 微風(fēng)發(fā)電項(xiàng)目可行報(bào)告
- 2025年中小學(xué)生安全教育日知識(shí)競(jìng)賽考試題(附答案)
- 2024年初級(jí)會(huì)計(jì)實(shí)務(wù)考試真題及答案(5套)
- 2024年東莞市寮步鎮(zhèn)招聘特聘材料員筆試真題
- 阿爾茨海默癥健康教育
- 2025年注會(huì)合同法試題及答案
- 2025年礦區(qū)招聘考試試題及答案
- 醫(yī)療器械安全知識(shí)培訓(xùn)
評(píng)論
0/150
提交評(píng)論