freepascal中的所有內部函式和過程

2021-05-05 03:56:04 字數 8328 閱讀 6832

1樓:匿名使用者

pascal常用的算術標準函式2023年12月05日 星期六 下午 07:11

一、數學函式:   inc(i) 使i:=i+1;   inc(i,b) 使i:

=i+b;   dec(i) 使i:=i-1;   dec(i,b) 使i:=i-b;   abs(x) 求x的絕對值 例:

abs(-3)=3   chr(x) 求編號x對應的字元。例:chr(65)='a' chr(97)='a' chr(48)='0'   ord(x) 求字元x對應的編號。

例:ord(『a')=65 ord(『a')=97 另外:ord(false)=0 ord(true)=1   sqr(x) 求x的平方。

例:sqr(4)=16   sqrt(x) 求x的正根. 例:

sqrt(16)=4 (ps:負數是不能進行運算的,如果需要就要先取絕對值:sqrt(-4)是錯的,應該為sqrt(abs(-4))   round(x) 求x的四捨五入 例:

round(4.5)=5   trunc(x) 求x的整數部分 例:trunc(5.

6)=5 結果是integer型   int(x) 求x的整數部分 例int(5.6)=5.0 結果是real型   frac (x) 求x的小數部分 例 frac(5.

6)=0.6   pred(x) 求x的前導 pred(『b')='a' pred(5)=4 pred(true)=false   succ(x) 求x的後繼 succ(『b')='c' succ(5)=6 succ(false)=true   odd(x) 判斷x是否為奇數。如果是值為true,反之值為false.

odd(2)=false odd(5)=true   power(a,n) 求a的n次方 power(2,3)=8   random 取0~1之間的隨機數(不能取到1)   randomize 隨機數的種子函式,在每次設定隨機數時都要把這個函式放在最前面.   fillchar(a,size(a),0) 陣列初始化,即把陣列a的值全部置為0 ;賦成布林型變數也可以,但注意,賦成1或其他數字,計算機並不會把陣列賦成你想要的值,卻是其他的數字   shr: x shr n 把x換成二進位制後向右移n位,相當於把x 除以 2^n   shl:

x shl n 把x換成二進位制後向左移n位,相當於把x 乘以 2^n pascal標準函式2009-10-31 21:14 pascal標準函式

一、變數改變:

1、inc(i) 使用後i:=i+1; inc(i,b)使用後i:=i+b;

2、dec(i) ;使用後i:=i-1;dec(i,b)使用後i:=i-b;

3、求x的絕對值 abs(x) 例:abs(-3)=3

二、數學計算方面:

1、求x的平方 sqr(x) 例:sqr(4)=16

2、求x的開方 sqrt(x) 例:sqrt(16)=4

3、求x的四捨五入round(x) 例:round(4.5)=5

4、求x的整數部分trunc(x) 例:trunc(5.6)=5 結果是integer型

5、求x的整數部分int(x) 例int(5.6)=5.0 結果是real型

6、求x的小數部分frac (x) 例 frac(5.6)=0.6

7、求a的n次方 power(a,n) 例power(2,3)=8

8、random 取0~1之間的隨機數(不能取到1)

9、randomize 隨機數的種子函式,在每次設定隨機數時都要把這個函式放在最前面 ,randomize(4800)+200 可以取互200至5000之間的整數。

10、fillchar(a,size(a),0) 陣列初始化,即把陣列a的值全部置為0

三、字元處理

1、求編號x對應的字元chr(x) 例:chr(65)=』a』 chr(97)=』a』 chr(48)=』0』

2、字元x對應的編號ord(x) 例:ord(『a』)=65 ord(『a』)=97 另外:ord(false)=0 ord(true)=1

3、 pred(x) 求x的前趨 pred(『b』)=』a』 pred(5)=4 pred(true)=false

4、succ(x) 求x的後繼 succ(『b』)=』c』 succ(5)=6 succ(false)=true

5、odd(x) 判斷x是否為奇數。如果是值為true,反之值為false. odd(2)=false odd(5)=true

6、shr: x shr n 把x換成二進位制後向右移n位,相當於 把x 除以 2n

7、shl: x shl n把x換成二進位制後向左移n位,相當於 把x 乘以 2n

四、字串函式

1、字串連線運算 concat(s1,s2,s3…sn) 相當於s1+s2+s3+…+sn.

例:concat(『11』,』aa』)=』11aa』;

2. 求子串。 copy(s,i,l) 從字串s中擷取第i個字元開始後的長度為l的子串。例:copy(『abdag』,2,3)=』bda』

3. 刪除子串。過程 delete(s,i,l) 從字串s中刪除第i個字元開始後的長度為l的子串。

例:s:=』abcde』;delete(s,2,3);結果s:

=』ae』

4. 插入子串。 過程insert(s1,s2,i) 把s1插入到s2的第i個位置

例:s:=abc;insert(『12』,s,2);結果s:=』a12bc』

5. 求字串長度 length(s) 例:length(『12abc』)=5

6. 搜尋子串的位置 pos(s1,s2) 如果s1是s2的子串 ,則返回s1的第一個字元在s2中的位置,若不是子串,則返回0.例:pos(『ab』,』12abcd』)=3

7. 字元的大寫轉換。upcase(ch) 求字元ch的大寫體。例:upcase(『a』)=』a』

8. 數值轉換為數串。 過程 str(x,s) 把數值x化為數串s.例:str(12345,s); 結果s=』12345』

9. 數串轉換為數值。 過程val(s,x,i) 把數串s轉化為數值x,如果成功則i=0,不成功則i為無效字元的序數例:

val(『1234』,x,i);結果 x:=1234 pascal函式與運算子2009-12-07 19:38

一、 函式 1. abs(x) 求x的絕對值 abs(5)=5,abs(-5)=5;abs(0)=0 abs(-10)= 10 abs(10)= 10 abs(98)=98 abs(-100)=100 2. sqr(x)求x的平方 sqr(5)=25, sqr(9)=81; sqr(8)=64 sqr(100)=10000 sqr(-7)= 49 sqr(0)= 0 3. sqrt(x) 求x的平方根 sqrt(16)=4, sqrt(49)=7 sqrt(81)=9 sqrt(100)=10 sqrt(0)=0 4.pred(x) 求x的前趨值 pred(6)=5 pred(『d』)=』c』 pred(9)=8 pred(『r』)=』q』 pred(false)=true 假 真 5.

succ(x)求x的後繼值 succ(6)=7 succ(』e』)=』f』 succ(3)= 4 succ(『p』)=』q』 succ(true)=false 6.ord(x)求x的序號 ord(『0』)=48 ord(『a』)=65 ord(『a』)=97 ord(『f』)=102 字元 ascii值 0 48 1 49 a 65 b 66 a 97 b 98 7.chr(x)求序號為x的字元 chr(50)= 『2』 chr(68)=』d』 chr(99)=』c』 8.

odd(x) 奇函式, x為奇數時為true, x為偶數時為false; odd(5)=true, odd(8)=false; odd(100)= false odd(91)= true

二、 求出下列表示式的值 運算順序(*、 /、 div 、 mod), ( +、 -) 乘、除、整除、 求餘、 加、減 3*2=6 6/2=3 0/2=0 9 div 2=4 17 div 5=3 -19 div 5=-3 -19 div (-5)=3負負得正 19 div (-5)=-3 異號得負 8 mod 3=2 17 mod 9=8 9 mod 18=9 -9 mod 4=-1 9 mod (-4)= 1 (-9) mod (-4)=-1 餘數的正負號與被除數的正負相同。 2 div 4= 0 4 div 2=2 10 div 3=3 10 mod 3=1 1.17 div 3=5 2. 17 mod 3=2 3.

17/2=8.5 4. 5*6 div 3= 10 5.

10-8 mod 3*4= 2 6. 20+3*4=32 7. 13*6-8 div 3 =78-2=76 運算順序:

同一級別:*、\、div、mod; 同一級別:+、- pascal函式大全2009-11-17 18:

53 pascal函式大全

一、數學函式:

inc(i) 使i:=i+1;

inc(i,b) 使i:=i+b;

dec(i) 使i:=i-1;

dec(i,b) 使i:=i-b;

abs(x) 求x的絕對值 例:abs(-3)=3

chr(x) 求編號x對應的字元。例:chr(65)=』a』 chr(97)=』a』 chr(48)=』0』

ord(x) 求字元x對應的編號。例:ord(『a』)=65 ord(『a』)=97 另外:ord(false)=0 ord(true)=1

sqr(x) 求x的平方。 例:sqr(4)=16

sqrt(x)求x的正根. 例:sqrt(16)=4 (ps:負數是不能進行運算的,如果需要就要先取絕對值:sqrt(-4)是錯的,應該為sqrt(abs(-4))

round(x) 求x的四捨五入 例:round(4.5)=5

trunc(x) 求x的整數部分 例:trunc(5.6)=5 結果是integer型

int(x) 求x的整數部分 例int(5.6)=5.0 結果是real型

frac (x)求x的小數部分 例 frac(5.6)=0.6

pred(x) 求x的前導 pred(『b』)=』a』 pred(5)=4 pred(true)=false

succ(x) 求x的後繼 succ(『b』)=』c』 succ(5)=6 succ(false)=true

odd(x) 判斷x是否為奇數。如果是值為true,反之值為false. odd(2)=false odd(5)=true

power(a,n) 求a的n次方 power(2,3)=8

random 取0~1之間的隨機數(不能取到1)

randomize 隨機數的種子函式,在每次設定隨機數時都要把這個函式放在最前面.

fillchar(a,size(a),0) 陣列初始化,即把陣列a的值全部置為0

shr: x shr n 把x換成二進位制後向右移n位,相當於 把x 除以 2n

shl: x shl n把x換成二進位制後向左移n位,相當於 把x 乘以 2n

二、字串函式

1. 連線運算 concat(s1,s2,s3…sn) 相當於s1+s2+s3+…+sn.

例:concat(『11』,』aa』)=』11aa』;

2. 求子串。 copy(s,i,l) 從字串s中擷取第i個字元開始後的長度為l的子串。

例:copy(『abdag』,2,3)=』bda』

3. 刪除子串。過程 delete(s,i,l) 從字串s中刪除第i個字元開始後的長度為l的子串。

例:s:=』abcde』;delete(s,2,3);結果s:=』ae』

4. 插入子串。 過程insert(s1,s2,i) 把s1插入到s2的第i個位置

例:s:=abc;insert(『12』,s,2);結果s:=』a12bc』

5. 求字串長度 length(s) 例:length(『12abc』)=5

6. 搜尋子串的位置 pos(s1,s2) 如果s1是s2的子串 ,則返回s1的第一個字元在s2中的位置,若不是子串,則返回0.

例:pos(『ab』,』12abcd』)=3

7. 字元的大寫轉換。upcase(ch) 求字元ch的大寫體。

例:upcase(『a』)=』a』

8. 數值轉換為數串。 過程 str(x,s) 把數值x化為數串s.

例:str(12345,s); 結果s=』12345』

9. 數串轉換為數值。 過程val(s,x,i) 把數串s轉化為數值x,如果成功則i=0,不成功則i為無效字元的序數

例:val(『1234』,x,i);結果 x:=1234

三、標準函式

標準函式。turbo pascal語言提供了自變數為整型量的標準函式有順序函式算術函式和轉換函式等。

標準函式是turbo pascal語言預先定義的,它們實際上是能完成特定功能的稱步子程式的程式段。每個標準函式都用一個識別符號來標識,每個標準函式都能完成一個特定的功能,在程式中可以直接呼叫它們。turbo pascal語言中某些標準函式與數學中的函式有相似之處。

一、整數型別函式

整型是順序型別,即所有的整型數都是按一定的順序排列的。如3的後序數是4,350的後序數是351。以後介紹的布林型、字元型、列舉型別和子界型別等都是順序型別。

順序函式可以對順序型別資料進行操作,但要注意它們自變數的取值範圍。

①前趨函式:pred(x)函式值為x-l,例如:

pred (6)=5 pred (-21)=-22

②後繼函式:succ (x)函式值為x+l,例如:

succ (l5)=16 succ (-114)= -113

③絕對值函式:abs (x)函式值為︱x︱,例如:

abs (-119)=119 abs (101)=101

④平方函式:sqr (x)函式值為x2,例如:

sqr (-5)=,25 sqr (l0)= 100

以上四個函式的結果仍是整型數。

⑤奇函式:odd (x),函式的結果為布林型。當x為奇數時,函式值為true;當x為偶數時,函式值為false。例如:

odd (13)= true odd (16)= false

⑥字元函式:chr (x),函式值是序號的ascii字元,屬字元型。例如:

chr (65)=』a』 chr (32)=』 』

二、實數型別函式

在下列算術函式中,x可以是實型或整型數的表示式。對於函式abs和sqr,其結果型別和變數x的型別相同,其他算術函式的結果型別都是實型。

絕對值函式abs(x):函式值為x的絕對值

平方函式sqr (x):函式值為x的平方

小數函式frac (x):函式值為x的小數部分

整數函式int (x):函式值為x的整數部分

正弦函式sin (x):函式值為x的正弦,其申,的單位為弧度

餘弦函式cos (x):函式值為x的餘弦,其中,的單位為弧度

指數函式exp (x):函式值為了ex

對數函式ln (x):函式值為x的自然對數

平方正根根函式的sqrt (x):函式值為x的平方正根

反正切函式arctan(x):函式值為x的反正切,單位為弧度

隨機函式random:無自變數時,函式值取(0,1)間的隨機小數;有自變數且為word型別時,函式值取(0,自變數)間的隨機整數。

三、字元型別函式turbo pascal語言提供如下自變數為字元型的標準函式,其中chr為字元型。

後繼函式succ (ch):例如,succ (』8』)=』9』 succ (』e』)=』f』

對字符集的最後一個字元,succ函式無意義。

前趨函式pred (ch):例如,pred (』7』)=』6』 pred (』b』)=』 a』

序數函式ord (ch)::給出字元ch在ascii字符集中的序號,結果為整型。

注意:ord (』7』)<>7,正確的是:ord (』7』)=ord(』0』)+7=48+7=55

若ch是數字字元,則ord (ch)-ord ('0')是該數字字元的數值。例如:ord (』7』)-ord(』0』)=7

前面介紹的字元函式chr (i)是ord (ch)的逆函式。例如:

chr (55)= 』7』 chr (ord(』a』))=』a』

三、布林型別函式

turbo pascal語言提供布林型函式主要是幾個字元型函式。

ord (b) 例如:ord (false)=0 ord (true)=1

freepascal的基礎練習題急需

出幾道題給你吧 一 某超市為了 規定 購物不足50元的按原價付款,超過50不足100的按九折付款,超過100元的,超過部分按八折付款。編一程式完成超市的自動計費的工作。二 輸入a,b,c三個不同的數,將它們按由小到大的順序輸出。三 程式設計模擬剪刀 石頭 布遊戲 用s表示剪刀,用r表示石頭,用p表示...

求一道free pascal 的題目

while j 0 do後面的意思是 把b 1 5 從1 5 變為6 10 所以要25次 因為s本來是1 所以s為26 還有觀察一下就知道for i j i to 5 do b i b j i j 這段中i永遠比5大 所以不會執行 望 僅限你現在的程式 就如樓上所說 這一段 問題很多 你打錯了 不少...

C查詢字串裡所有中括號內的子串

static void main string args 其實這種表達很不好分析,但是可以完成,如下 string str 這是一段測試資料 我們100 這是一段測試資料 你們200 這是一段測試資料 他們100 誰們300 var strl str.spilt string strget frea...