Par13 2

Page 1

Κεφάλαιο 13.2

Συναρτήσεις Τακτικών Τύπων.


Ο πίνακας χαρακτήρων ASCII.

2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

! # $ % & ' ( ) * + , . / 0 1 2 3

52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77

4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M

78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103

N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g

104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129

h i j k l m n o p q r s t u v w x y z { | } ~ • €

1/11/2013

130 , 131 ƒ 132 „ 133 … 134 † 135 ‡ 136 137 ‰ 138 139 ‹ 140 141 142 143 144 145 ‘ 146 ’ 147 “ 148 ” 149 • 150 – 151 — 152 153 ™ 154 155 ›

156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181

΅ Ά £ ¤ ¥ ¦ § ¨ © « ¬ ­ ® ― ° ± ² ³ ΄ µ

182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207

¶ · Έ Ή Ί » Ό ½ Ύ Ώ ΐ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο

208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233

Π Ρ

234 235 236 Σ 237 T 238 Υ 239 Φ 240 Χ 241 Ψ 242 Ω 243 244 245 246 247 248 249 250 α 251 β 252 γ 253 δ 254 ε 255 ζ η θ ι

Κέρος Α. Ιωάννης

κ λ μ ν ξ ο π ρ ς σ τ υ φ χ ψ ω ϊ ϋ ό ύ ώ


Chr. Δέχεται μία ακέραια τιμή x από 0 .. 255.

Chr( x: integer ) : char

Επιστρέφει τον ASCII χαρακτήρα του αριθμού x.

Παραδείγματα.

3

Chr(80)

P

Chr(231)

η

Chr(49)

1

1/11/2013

Κέρος Α. Ιωάννης


Ord. (1η Περίπτωση) Δέχεται έναν χαρακτήρα x.

Επιστρέφει την ASCII τιμή του χαρακτήρα x (0..255).

ord( x ) : integer Παραδείγματα.

4

Ord(‘F’)

70

Ord(‘r’)

114

1/11/2013

Κέρος Α. Ιωάννης


Ord. (2η Περίπτωση) Δέχεται έναν ακέραιο αριθμό x.

Επιστρέφει τον ίδιο τον αριθμό x.

ord( x ) : integer Παραδείγματα. Ord(49)

5

49

1/11/2013

Κέρος Α. Ιωάννης


Ord. (3η Περίπτωση) Δέχεται μία λογική τιμή x (True/False).

Επιστρέφει 0 αν η τιμή x ήταν False και 1 αν ήταν True.

ord( x ) : integer Παραδείγματα. Ord(false) Ord(true)

6

0 1

1/11/2013

Κέρος Α. Ιωάννης


Pred. Δέχεται μία τιμή x τακτικού τύπου.

pred( x ) : ordinal type Παραδείγματα.

7

pred(‘C’) pred(‘λ’)

κ

pred(‘6’) pred(15)

5 14

pred(true)

false

pred(false)

true

Επιστρέφει την προηγούμενη τιμή της x.

B

1/11/2013

Κέρος Α. Ιωάννης


Succ. Δέχεται μία τιμή x τακτικού τύπου.

succ( x ) : ordinal type Παραδείγματα.

8

succ(‘C’) succ(‘λ’)

μ

succ(‘6’) succ(15)

7 16

succ(true)

false

succ(false)

true

Επιστρέφει την επόμενη τιμή της x.

D

1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 1ο (Σελίδα 133).

(pk13a1.pas)

Εντολές Pascal Writeln(chr(80));

P

Writeln(ord(70));

70

Writeln(ord(‘P’));

80

Writeln(succ(‘P’));

Q 9

Writeln(succ(‘8’)); Writeln(pred(‘A’));

9

Writeln(ord(230));

@ 230

Writeln(ord(-210));

-210

Writeln(succ(8));

9 1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 1ο (Σελίδα 133) συνέχεια …. Εντολές Pascal Writeln(succ(-330));

-329

Writeln(pred(-329));

-330

Writeln(pred(0));

-1

Writeln(ord(Maxint));

32767 32770

Writeln(pred(Maxint+4)); Writeln(succ(-Maxint+3));

10

Writeln(ord(false));

-32763 0

Writeln(ord(true));

1

1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 2ο (Σελίδα 134) .

(pk13a2.pas)

Εντολές Pascal Writeln(ord(‘0’));

48

Writeln(ord(‘1’));

49

Writeln(ord(‘2’));

50

x:=ord(‘1’)-ord(‘0’); 1

Writeln(x);

x:=ord(‘2’)-ord(‘0’); 2

Writeln(x);

11

1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 2ο (Σελίδα 134) συνέχεια…. Εντολές Pascal

12

Writeln(chr(7+ord(‘0’)));

7

Writeln(chr(4+ord(‘0’)));

4

Writeln(chr(0+ord(‘0’))); Writeln(chr(23+ord(‘0’)));

0 G

Writeln(chr(23 div 10+ord(‘0’)));

2

Writeln(chr(23 mod 10+ord(‘0’)));

3

1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 3ο (Σελίδα 133).

(pk13a3.pas)

Μετατροπή ψηφίου τύπου χαρακτήρα στον ισοδύναμο ακέραιο.

13

Program exam; Uses WinCrt; Var x:char; y:integer; Begin readln(x); y:= ord(x)-ord(‘0’); writeln(y); End.

Έστω ‘7’ ord(‘7’)-ord(‘0’)=55-48=7 7 1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 4ο (Σελίδα 134).

(pk13a4.pas)

Μετατροπή μονοψήφιου ακεραίου στον ισοδύναμο χαρακτήρα.

14

Program exam; Uses WinCrt; Var x:integer; y:char; Begin readln(x); y:= chr(x+ord(‘0’)); writeln(y); End.

Έστω 8 chr(8+48)=chr(56)=‘8’ ‘8’ 1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 5ο (Σελίδα 136).

(pk13a5.pas)

Μετατροπή κεφαλαίου χαρακτήρα στον αντίστοιχο πεζό.

15

Program exam; Uses WinCrt; Var x,y:char; Begin readln(x); if (x>=‘A’) and (x<=‘Z’) then begin y:=chr(ord(x)+32); writeln(y); end else writeln(‘Δεν ήταν κεφαλαίος χαρακτήρας’); End. 1/11/2013

Κέρος Α. Ιωάννης


Παράδειγμα 6ο (Σελίδα 135).

(pk13a6.pas)

Εμφάνιση των χαρακτήρων ASCII.

16

Program exam; Uses WinCrt; Var x:integer; Begin x:=0; while x<256 do begin writeln(x,’,’,chr(x)); x:=x+1; end; End. 1/11/2013

Κέρος Α. Ιωάννης


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.