1. 程式人生 > >pascal中的xor,shr,shl,Int(),ArcTan()等運算子詳解

pascal中的xor,shr,shl,Int(),ArcTan()等運算子詳解

一、數學函式: 

Inc(i) 使I:=I+1; 
Inc(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 
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