第2章-面向?qū)ο蟮膒ascal語言解析課件_第1頁
第2章-面向?qū)ο蟮膒ascal語言解析課件_第2頁
第2章-面向?qū)ο蟮膒ascal語言解析課件_第3頁
第2章-面向?qū)ο蟮膒ascal語言解析課件_第4頁
第2章-面向?qū)ο蟮膒ascal語言解析課件_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第二章面向?qū)ο蟮膒ascal語言本章學(xué)習(xí)導(dǎo)讀2.1ObjectPascal概述2.2基本數(shù)據(jù)類型2.3運算符

本章小結(jié)2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程第二章面向?qū)ο蟮膒ascal語言本章學(xué)習(xí)導(dǎo)讀2023/101本章學(xué)習(xí)導(dǎo)讀本章首先介紹如何在Delphi集成開發(fā)環(huán)境中創(chuàng)建控制臺程序,這將為下面學(xué)習(xí)對象Pascal語言的基本理論創(chuàng)造一個簡單實用的上機環(huán)境;然后介紹面向?qū)ο蟮腜ascal語言中的一些基本知識,如源程序結(jié)構(gòu)、符號、常量、變量、基本數(shù)據(jù)類型和表達式,并相應(yīng)的配合圖形界面程序?qū)崿F(xiàn)的實例進一步加深讀者對相關(guān)知識點的理解。讀者在學(xué)習(xí)完本章之后就可以使用Delphi進行簡單的面向?qū)ο蟮某绦蛟O(shè)計和開發(fā)了。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程本章學(xué)習(xí)導(dǎo)讀本章首先介紹如何在Delphi集成開發(fā)環(huán)境中創(chuàng)建22.1ObjectPascal概述2.1.1標(biāo)識符2.1.2保留字2.1.3注釋2.1.4常量和變量

2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1ObjectPascal概述2.1.1標(biāo)識符32.1ObjectPascal概述ObjectPascal具備清晰的模塊結(jié)構(gòu),編譯、運行效率高,便于移植,同時由于它提供了各種常量、變量的設(shè)置以及豐富的數(shù)據(jù)類型,在充分體現(xiàn)結(jié)構(gòu)化程序設(shè)計的同時,使其應(yīng)用程序廣泛應(yīng)用于應(yīng)用軟件的開發(fā)。通??梢岳肈elphi開發(fā)下面的3種應(yīng)用程序:(1)Windows圖形界面程序(2)控制臺程序(3)服務(wù)器程序2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1ObjectPascal概述ObjectPas42.1ObjectPascal概述例2-1:編寫一個小程序。要求輸入一行文字,然后輸出用戶輸入的文字,按回車鍵退出。該實例可以讓讀者在學(xué)習(xí)對象Pascal語言的過程中方便地上機。該實例具有以下特點:(1)是一個控制臺程序。(2)生成的應(yīng)用程序非常小,一般在幾十個字節(jié)左右。(3)便于保存和備份實例。因為實例的運行環(huán)境、界面模式和文件等都比較簡單、統(tǒng)一,所以在做完實例之后可以將關(guān)鍵代碼復(fù)制到某個字處理軟件的文檔中保存。另外也可以通過簡單的操作將運行結(jié)果顯示的文字復(fù)制到剪貼板中。(4)相關(guān)文件少。最少情況下可以只有一個工程文件(.dpr)和一個可執(zhí)行文件(.exe)。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1ObjectPascal概述例2-1:編寫一個小52.1.1標(biāo)識符標(biāo)識符(Identifiers)是以字母或下劃線開頭,后跟字母、數(shù)字或下劃線所組成的串,其作用是標(biāo)識常量、變量、類型、屬性、對象、過程、函數(shù)、程序、單元、庫和組件庫等。標(biāo)識符由一個或多個ASCII碼字符序列組成,其構(gòu)詞規(guī)則如下:(1)標(biāo)識符由字母、數(shù)字或下劃線組成;(2)標(biāo)識符的第一個字符必須是字母或下劃線;(3)標(biāo)識符的長度不應(yīng)超過255個字符,否則只有前255個字符有效;(4)不能將保留字用作標(biāo)識符;(5)標(biāo)識符不區(qū)分大、小寫。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.1標(biāo)識符標(biāo)識符(Identifiers)是以字母62.1.2保留字程序如同一篇文章,由字符組成單詞,再由單詞和符號構(gòu)成句子――語句。ObjectPascal語言中具有特殊含義的單詞稱為保留字。保留字系統(tǒng)已使用,用戶不可以用來作為標(biāo)識符。以下是ObjectPascal的保留字:

AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,F(xiàn)ILE,F(xiàn)OR,F(xiàn)UNTION,GOTO,IF,IN,LABEL,MOD,NIL,NOT,OF,OR,PACKED,PROCEDURE,PROGRAM,RECORD,REPEAT,SET,THEN,TO,TYPE,UNTIL,VAR,WHILE,WITH等2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.2保留字程序如同一篇文章,由字符組成單詞,再由單72.1.3注釋注釋語句為非執(zhí)行語句,編譯程序不對其進行翻譯,也不執(zhí)行,只是為方便用戶讀程序而附加的解釋說明語句。ObjectPascal支持3種類型的注釋。大括號注釋:“{”與“}”的成對使用表示它們之間的內(nèi)容為注釋部分。帶星號的小括號注釋:“(*”與“*)”的成對使用表示它們之間的內(nèi)容為注釋部分。雙斜杠注釋“//”:表示所在行的該符號之后的內(nèi)容為注釋。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.3注釋注釋語句為非執(zhí)行語句,編譯程序不對其進行翻82.1.3注釋例2-2:編寫一個小程序。依次輸入a,b,c三個數(shù),然后分行輸出三個數(shù),按回車鍵退出。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.3注釋例2-2:編寫一個小程序。依次輸入a,b,92.1.4常量和變量常量和變量是學(xué)習(xí)各種編程語言進行程序設(shè)計的基礎(chǔ)概念,它們都是存儲數(shù)據(jù)的載體,它們在同一時刻只存儲一個數(shù)據(jù)。常量和變量代表了在程序運行過程中兩種不同狀態(tài)的量。常量的值是指在程序運行過程中始終不變;與之相反,變量的值則是程序運行過程中可以改變。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.4常量和變量常量和變量是學(xué)習(xí)各種編程語言進102.1.4常量和變量常量在ObjectPascal中用Const關(guān)鍵字來聲明變量,可以同時聲明一個或幾個常量,每定義一個常量應(yīng)以分號結(jié)束。說明常量時,不需要指定其數(shù)據(jù)類型,只需給出具體的值。因為編譯器能根據(jù)常量的值自動判斷常量的類型并分配內(nèi)存,對于整型常量,編譯器在運行時跟蹤它的值,并不對它分配內(nèi)存。如:Consta=10,編譯器能自動判斷a是整型,ConstPi=3.14判斷Pi是實型,等等。常量賦值的格式如下:

Const常量名=表達式;2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.4常量和變量常量2023/10/8C++面向?qū)ο?12.1.4常量和變量變量ObjectPascal中用Var關(guān)鍵字來聲明變量,在聲明變量時需要聲明變量的類型。變量分為全局變量和局部變量。全局變量一旦聲明,會在整個程序中起作用。而局部變量則是在某一個過程或函數(shù)中起作用,退出該過程或函數(shù)則該變量自動從內(nèi)存中被釋放。變量是程序代碼中代表一個內(nèi)存地址的標(biāo)識符,而此地址中的內(nèi)容在程序代碼執(zhí)行時可以被改變。在使用變量前必須對它進行說明,即對它進行命名,并說明它的類型。系統(tǒng)根據(jù)變量的數(shù)據(jù)類型為每一個變量分配一定的內(nèi)存空間。用戶可以通過變量名對內(nèi)存單元進行讀或?qū)?。變量賦值的格式如下:var變量名列表:類型名;2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.4常量和變量變量2023/10/8C++面向?qū)ο?22.1.4常量和變量例2-3:計算路程有一輛汽車每小時可以行駛x公里,欲計算y小時能行駛多少公里(假設(shè)x和y均為整數(shù))。解決這個問題需要使用公式:路程=速度×?xí)r間。要編寫解決這個問題的程序,需要使用3個變量:v、t和s。變量v用于存放速度的值,變量t用于存放時間的值,變量s用于存放路程的值。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.1.4常量和變量例2-3:計算路程2023/10/8132.2基本數(shù)據(jù)類型2.2.1簡單數(shù)據(jù)類型2.2.2字符串類型2.2.3可變類型2.2.4類型轉(zhuǎn)換

2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2基本數(shù)據(jù)類型2.2.1簡單數(shù)據(jù)類型2023/1142.2基本數(shù)據(jù)類型在ObjectPascal語言中,每個數(shù)據(jù)都有一個確定的類型,某種數(shù)據(jù)類型定義了該類型數(shù)據(jù)的存儲方式和允許的一組運算,存儲方式的定義相應(yīng)地便確定了該類型數(shù)據(jù)的取值范圍。ObjectPascal是一種強類型語言,其變量在使用之前都要聲明其數(shù)據(jù)類型。變量的數(shù)據(jù)類型決定了它能夠存儲數(shù)據(jù)的形式、數(shù)據(jù)的范圍以及它能夠進行的運算。在聲明變量時,常量值本身就代表其類型,同時也決定了它所能參與的運算。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2基本數(shù)據(jù)類型在ObjectPascal語言中,每152.2.1簡單數(shù)據(jù)類型簡單數(shù)據(jù)類型包括整型、實型、布爾型和字符型等。整型一個整型數(shù)據(jù)用來存放整數(shù)。ObjectPascal支持7種預(yù)定義整型,每一種類型規(guī)定了相應(yīng)的整數(shù)取值范圍以及所占用的內(nèi)存字節(jié)數(shù)。整型類型是由正號或負(fù)號、數(shù)字組成的數(shù)據(jù),數(shù)據(jù)中不包含小數(shù)。一般整型類型是最常用的類型,它們可以充分利用CPU和操作系統(tǒng)的特性,所以在程序中應(yīng)盡可能使用這種整數(shù)類型。實型一個實型數(shù)據(jù)用類存放實數(shù),是實數(shù)的子集,它是帶有小數(shù)部分的數(shù)值。ObjectPascal支持六種預(yù)定義實型,每一種類型規(guī)定了相應(yīng)的實數(shù)取值范圍、所占用的內(nèi)存字節(jié)數(shù)以及它們所能達到的精度見教材表2-2所示。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.1簡單數(shù)據(jù)類型簡單數(shù)據(jù)類型包括整型、實型、布爾型162.2.1簡單數(shù)據(jù)類型布爾型一個布爾型數(shù)據(jù)用來存放邏輯值(布爾值)。ObjectPascal支持四種預(yù)定義布爾型,每一個類型規(guī)定了所占用的內(nèi)存字節(jié)數(shù)。布爾型的值只有兩個:False(序號是0)和True(序號是1),分別表示邏輯假和邏輯真。并且True<False。4.字符型字符型用Char作為標(biāo)識符。字符串用String作為標(biāo)識符。字符型必須用單引號括起來,字母作為字符型時,要區(qū)分大小寫,并且字符型只允許單引號中有一個字符,否則就是字符串。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.1簡單數(shù)據(jù)類型布爾型2023/10/8C++面向172.2.1簡單數(shù)據(jù)類型例2-4:編寫一個小程序,將整數(shù)值為0~255的字符在屏幕上輸出。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.1簡單數(shù)據(jù)類型例2-4:編寫一個小程序,將整數(shù)值182.2.2字符串類型字符串類型包括ShortString,AnsiString和WideString三種類型,如教材表2-3所示。ShortString類型中的每個元素都是AnsiChar類型,不以NULL作為結(jié)束標(biāo)記;AnsiString類型也是基于AnsiChar類型,可被動態(tài)分配存儲空間,字符個數(shù)幾乎不受限制,以NULL作為結(jié)束標(biāo)記;WideString與AnsiString類似,只是所包含的字符是WideChar類型字符。習(xí)慣上String默認(rèn)為AnsiString類型。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.2字符串類型字符串類型包括ShortStri192.2.3可變類型有時需要對一些數(shù)據(jù)類型變化的數(shù)據(jù)進行操作,并且在編譯期間不能確定數(shù)據(jù)的類型,這時就可以使用可變類型的數(shù)據(jù)。這些數(shù)據(jù)的數(shù)據(jù)類型可以在運行期間進行改變,但是它們比固定類型的數(shù)據(jù)占用更多的空間和更多的操作實踐。另外,可變類型不能包含記錄型、集合類型、靜態(tài)數(shù)組、文件類型、類、指針類型以及長整型等數(shù)據(jù)類型。可變類型變量聲明:

var變量名表:variant2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.3可變類型有時需要對一些數(shù)據(jù)類型變化的數(shù)據(jù)進行操202.2.4類型轉(zhuǎn)換在Delphi程序中,只有賦值號兩端的數(shù)據(jù)類型一致或相容才可以進行賦值的操作。有時在一個表達式中包含有各種類型的數(shù)據(jù),這就需要將不同類型的操作數(shù)轉(zhuǎn)換為同一類型的數(shù)據(jù),使所得到的結(jié)果只能是某一類型的數(shù)據(jù)。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.4類型轉(zhuǎn)換在Delphi程序中,只有賦值號兩端的212.2.4類型轉(zhuǎn)換類型相容類型相容的數(shù)據(jù)之間可以進行關(guān)系運算。類型相容是賦值相容的前提,也是進行數(shù)據(jù)運算的前提。在ObjectPascal中,兩種數(shù)據(jù)類型只有滿足下列條件之一時才是相容的:兩種類型的數(shù)據(jù)一致。兩種類型的數(shù)據(jù)都是實型。兩種類型的數(shù)據(jù)都是整型。一種數(shù)據(jù)類型是另一種數(shù)據(jù)類型的子界。兩種數(shù)據(jù)類型是另外一種宿主類型的子界。兩種數(shù)據(jù)類型都是另外一種相容基類型的集合類型。兩種數(shù)據(jù)類型都是緊湊字符串類型,并且具有相同的元素個數(shù)。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.4類型轉(zhuǎn)換類型相容2023/10/8C++面向?qū)?22.2.4類型轉(zhuǎn)換一種數(shù)據(jù)類型是字符串類型,另一種數(shù)據(jù)類型是字符串類型、緊湊字符串類型或字符類型,或者一種數(shù)據(jù)類型是Char類型,另一種數(shù)據(jù)類型是形式為array[0..n]ofchar的字符數(shù)組。一種類型是Pointer類型,另一種數(shù)據(jù)類型是指向任意一種數(shù)據(jù)類型的指針類型,或者2種數(shù)據(jù)類型都是基類型相同的指針類型。兩種數(shù)據(jù)類型都是類數(shù)據(jù)類型或者類引言類型,并且一種數(shù)據(jù)類型繼承了另外一種類型。兩種數(shù)據(jù)類型都是結(jié)果類型相同、參數(shù)個數(shù)相同、參數(shù)類型一致的過程類型。一種數(shù)據(jù)類型是可變數(shù)據(jù)類型,另外一種數(shù)據(jù)類型是整型、實型、字符串類型或布爾類型。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.4類型轉(zhuǎn)換一種數(shù)據(jù)類型是字符串類型,另一種數(shù)據(jù)類232.2.4類型轉(zhuǎn)換變量的強制類型轉(zhuǎn)換強制類型轉(zhuǎn)換就是將一種類型的變量當(dāng)作另一種類型。因為ObjectPascal是對數(shù)據(jù)類型要求嚴(yán)格的面向?qū)ο蟪绦蛟O(shè)計語言,編譯器檢查一些語句的數(shù)據(jù)類型是非常嚴(yán)格的,為了能通過編譯檢查,經(jīng)常需要把一個變量的類型轉(zhuǎn)換為另一種類型。強制類型轉(zhuǎn)換的格式如下:

類型標(biāo)識符(變量名);2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.4類型轉(zhuǎn)換變量的強制類型轉(zhuǎn)換2023/10/8C242.2.4類型轉(zhuǎn)換例2-5:有以下程序段Varstr1:char;str2:byte;beginstr1:=’a’;str2:=str1;End試寫出該程序正確的類型轉(zhuǎn)換語句。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.2.4類型轉(zhuǎn)換例2-5:有以下程序段2023/10/252.3運算符2.3.1賦值運算符2.3.2算術(shù)運算符2.3.3關(guān)系運算符2.3.4邏輯運算符2.3.5集合運算符2.3.6位運算符2.3.7其他運算符2.3.8運算符的優(yōu)先級2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3運算符2.3.1賦值運算符2023/10/8C262.3運算符運算符是在代碼中對各種數(shù)據(jù)類型進行運算的符號。例如,有能進行加、減、乘、除的運算符,有能訪問一個數(shù)組的單個單元地址的運算符。表達式由運算對象和運算符兩部分組成。不同數(shù)據(jù)類型的數(shù)據(jù)所能進行的運算是不同的,下面分別對各種運算符及其功能進行介紹。根據(jù)運算符給定的操作數(shù)數(shù)據(jù)類型,可以將其分為以下幾種:賦值運算符、算術(shù)運算符、關(guān)系運算符、邏輯運算符、集合運算符、位運算符和其他運算符。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3運算符運算符是在代碼中對各種數(shù)據(jù)類型進行運算的符號272.3.1賦值運算符賦值語句格式:

變量:=表達式;其中,“:=”稱為賦值號。賦值語句的功能是先計算賦值運算符右邊表達式的值,然后再把結(jié)果賦給左邊的變量。例如:x:=12;y:=5*x+6;str1:=’w’;2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.1賦值運算符賦值語句格式:2023/10/8C+282.3.2算術(shù)運算符算術(shù)運算符對浮點數(shù)和整數(shù)進行加、減、乘、除和取模運算,如教材表2-4所示。其中+和-運算符還可以作為單目運算符,放在浮點數(shù)或整數(shù)前,分別表示正數(shù)和負(fù)數(shù)。此外,+運算符還可以用在字符串的運算表達式中,可以將兩個字符串連在一起。+、-和*運算符還可以用在集合運算表達式中。在進行“+”、“-”、“*”運算中,只有一個運算分量為Real類型,則結(jié)果就為Real類型,只有兩個運算分量都為Integer類型時,結(jié)果才為Integer類型。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.2算術(shù)運算符算術(shù)運算符對浮點數(shù)和整數(shù)進行加、減、292.3.2算術(shù)運算符例2-6:varn,m,r:integer;x,y,z:real;beginn:=10;m:=3;x:=2.5;r:=nmodm;//將n除以m所得的余數(shù)賦給rz:=n+x;y:=n/x;writeln(r);writeln(z);writeln(y);readlnend.程序段執(zhí)行后,r,z,y的值分別為多少?2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.2算術(shù)運算符例2-6:2023/10/8C++面302.3.2算術(shù)運算符例2-7:已知圓半徑r,計算圓的周長和面積。使用公式:C=2∏r和S=∏r2,式中C表示圓的周長,S表示圓的面積,r表示圓的半徑。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.2算術(shù)運算符例2-7:已知圓半徑r,計算圓的周長312.3.3關(guān)系運算符關(guān)系運算符可以對兩個普通數(shù)據(jù)類型、類、對象、接口類型或字符串類型的數(shù)據(jù)進行比較,結(jié)果數(shù)據(jù)類型為布爾類型。關(guān)系運算符如教材表2-6所示。關(guān)系運算符用來比較兩個操作數(shù)的大小,被比較的兩個操作數(shù)類型必須相容,若操作數(shù)是數(shù)值,則按照數(shù)值的大小進行比較;若操作數(shù)是字符(串),則根據(jù)字符的先后順序按照ASCII值進行比較。例:’a’>’A’//結(jié)果為True,‘a(chǎn)’的ASCII值為‘97’,

//‘A’的ASCII值為65’15’>’A’//結(jié)果為False2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.3關(guān)系運算符關(guān)系運算符可以對兩個普通數(shù)據(jù)類型、類322.3.3關(guān)系運算符例2-8:在Delphi集成開發(fā)環(huán)境中,創(chuàng)建一個控制臺程序的工程,并在代碼編輯窗口中打開Project8.dpr文件,在該文件中輸入如下代碼:programProject8;{$APPTYPECONSOLE}varx,y:Integer;Bo:Boolean;beginx:=10;//給x賦值10y:=20;//給y賦值20Bo:=not(x>y);writeln(Bo);readlnend.運行后,布爾型變量“Bo”的值為什么?2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.3關(guān)系運算符例2-8:在Delphi集成開發(fā)環(huán)332.3.4邏輯運算符Pascal語言用and和or作為邏輯與和邏輯或運算符,Pascal的邏輯非的運算符是not,它是用來對一個布爾表達式取反。邏輯運算符對邏輯類型的操作數(shù)進行運算,數(shù)據(jù)結(jié)果也為邏輯類型,如教材表2-7所示。not(邏輯非):將邏輯結(jié)果取反,即原先為True的變成False,原選為False的變成True。and(邏輯與):有且僅有兩個操作數(shù)為真,結(jié)果才為真;否則為假。相當(dāng)于漢語中“并且”的意思,只有當(dāng)兩個條件同時滿足時,結(jié)果才為True。or(邏輯或):僅當(dāng)一個操作數(shù)為真時,值就為真,否則為假。xor(邏輯異或):當(dāng)兩個操作數(shù)不同時,即一個為True,另一個為False時結(jié)果為真,同時為True或同時為False時為假。2023/10/8C++面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計基礎(chǔ)教程2.3.4邏輯運算符Pascal語言用and和or作為邏342.3.5集合運算符集合運算符只要對兩個集合進行操作,判斷兩個集合之間的關(guān)系,如教材表2-9所示。例如,有以下說明和集合的運算:typeNumbers=1...100;Numset=setofNumbers;varset1,set2,set3,set4,set5:Numset;beginset1:=[1,3,5,7];set2:=[2,4,5,8];set4:=[1,3];set5:=[2,5];set3:=set1+set2;end;試算出set3的值。2023/10/8C+

溫馨提示

  • 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

提交評論