Κεφάλαιο 13.1
Κατηγορίες Τύπων Δεδομένων.
Κατηγορίες Τύπων Δεδομένων. Ορισμός: Ο τύπος των δεδομένων είναι μία τυπική περιγραφή των τιμών που μπορούν να αποθηκευτούν σε μία σταθερά ή μεταβλητή καθώς και των πράξεων που μπορούν να εκτελεστούν με τις τιμές αυτές.
Βασικοί τύποι της Pascal: Integer. Real. Boolean. Char.
2
1/11/2013
Κέρος Α. Ιωάννης
Integer. Πρόκειται για αρνητικούς και θετικούς ακεραίους από το -∞ έως το + ∞ (θεωρητικά). Παράδειγμα 4, -9 κλπ. Πρακτικά, όμως περιορίζονται από –MAXINT-1 έως +ΜΑΧΙΝΤ, όπου ο MAXINT είναι ο μεγαλύτερος ακέραιος που μπορεί να αναπαρασταθεί στον υπολογιστή, συνήθως MAXINT=32767. Επιτρεπτές πράξεις με integer:
+, -, *, /, div, mod. :=. >, >=, <, <=, =, <>.
3
1/11/2013
Κέρος Α. Ιωάννης
Real. Πρόκειται για αρνητικούς και θετικούς πραγματικούς από το -∞ έως το + ∞ (θεωρητικά). Παράδειγμα 4.56, -9.6 κλπ.
Πρακτικά, όμως περιλαμβάνει ένα υποσύνολο των πραγματικών αριθμών, το οποίου το εύρος και η ακρίβεια των δεκαδικών ψηφίων εξαρτάται από τον τύπο του υπολογιστή και του μεταφραστικού προγράμματος. Επιτρεπτές πράξεις με real:
+, -, *, /. :=. >, >=, <, <=, =, <>.
4
1/11/2013
Κέρος Α. Ιωάννης
Boolean. Η τυπική περιγραφή του τύπου αυτού προέρχεται από την άλγεβρα Boole.
Οι τιμές των λογικών μεταβλητών μπορεί να είναι δύο: True και False. Επιτρεπτές πράξεις με boolean: And, or, not, xor. :=. =, <>.
5
1/11/2013
Κέρος Α. Ιωάννης
Char. Η περιγραφή των τιμών του τύπου αυτού εξαρτάται από το σύνολο των χαρακτήρων που διαθέτει ο υπολογιστής. Η Pascal χρησιμοποιεί τον κώδικα ASCII. Στον κώδικα ASCII υπάρχει παράδειγμα : ‘Α’<‘Β’<‘C’……
διάταξη
των
χαρακτήρων,
για
Επιτρεπτές πράξεις με char: <. <=, >, >=, =, <>. :=.
6
1/11/2013
Κέρος Α. Ιωάννης
Ο πίνακας χαρακτήρων ASCII.
7
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 ζ η θ ι
Κέρος Α. Ιωάννης
κ λ μ ν ξ ο π ρ ς σ τ υ φ χ ψ ω ϊ ϋ ό ύ ώ
Κατηγορίες Τύπων Δεδομένων. Μονόμετροι ή Βαθμωτοί. Τακτικοί.
Απλοί. Με δόμηση. Χωρίς δόμηση.
Σύνθετοι ή Δομές Δεδομένων.
Στατικοί.
Δυναμικοί.
8
1/11/2013
Κέρος Α. Ιωάννης
Μονόμετροι ή Βαθμωτοί Τύποι. Ορισμός: Μονόμετροι ή Βαθμωτοί Τύποι ονομάζονται αυτοί που: 1. Αποτελούνται από αδιαίρετα ή ατομικά στοιχεία. Δεν αποτελούνται από μέρη που μπορούν να προσπελαστούν ανεξάρτητα. Για παράδειγμα ο τύπος char έχει αυτήν την ιδιότητα αφού κάθε στοιχείο του (γράμμα) είναι αδιαίρετο ενώ ο string όχι (‘Πληροφορική’, από πολλά γράμματα δεν αποτελείται;). 2. Είναι διατεταγμένοι. Όταν λέμε ότι ένας τύπος είναι διατεταγμένος, εννοούμε ότι μία μόνο εκ των σχέσεων >, <, = αληθεύει για κάθε ζεύγος τιμών. Για παράδειγμα, 11<22, 4.67>2.5, ‘Α’<‘Β’, True=True κλπ.
Είναι κατανοητό πως όλοι οι βασικοί τύποι της Pascal είναι μονόμετροι.
9
1/11/2013
Κέρος Α. Ιωάννης
Τακτικοί Τύποι. Ορισμός: Τακτικοί Τύποι ονομάζονται αυτοί που:
κάθε τιμή (εκτός από την πρώτη) έχει μία μοναδική προηγούμενη και, κάθε τιμή (εκτός από την τελευταία) έχει μία μοναδική επόμενη. Είναι κατανοητό πως μόνο ο integer, ο char και ο Boolean είναι τακτικοί. Γιατί όχι ο Real;. Ποιος ο προηγούμενος και ο επόμενος του αριθμού 56.98; ο 56.97 και 56.99;
10
ή
ο 56.979 και 56.981;
1/11/2013
κλπ.
Κέρος Α. Ιωάννης
Απλοί Τύποι. Ορισμός: Απλοί Τύποι ονομάζονται αυτοί που δέχονται μοναδικές τιμές.
Οι μεταβλητές αυτού του τύπου δέχονται μία μόνο τιμή. Παράδειγμα αυτών των τύπων είναι όλοι οι τύποι της Pascal, που είναι όπως είπαμε και πριν, και βαθμωτοί.
11
1/11/2013
Κέρος Α. Ιωάννης
Σύνθετοι Τύποι ή Δομές Δεδομένων. Ορισμός: Σύνθετοι Τύποι ονομάζονται αυτοί που δέχονται ως τιμή μία ενότητα τιμών. Οι σύνθετοι τύποι που υπάρχουν στην Pascal ή που φτιάχνονται από τον προγραμματιστή, δημιουργούνται με πρώτη ύλη τους απλούς τύπους της Pascal. Διακρίνονται σε σύνθετους τύπους : Με δόμηση. Χωρίς δόμηση.
12
1/11/2013
Κέρος Α. Ιωάννης
Σύνθετοι Τύποι Με Δόμηση. Ορισμός: Ένας Σύνθετος Τύπος Με Δόμηση είναι μία
οργανωμένη συλλογή από συστατικά, όπου υπάρχει μία σχέση μεταξύ των μερών της συλλογής. Σε αυτούς του τύπους υπάρχει η δυνατότητα πρόσβασης και επεξεργασίας είτε μεμονωμένων μερών της συλλογής είτε τον χειρισμό της συλλογής ενιαία, ως μία ενότητα. Στην γλώσσα Pascal υπάρχουν 2 τέτοιου είδους τύποι: οι πίνακες και τα αρχεία.
13
1/11/2013
Κέρος Α. Ιωάννης
Σύνθετοι Τύποι Χωρίς Δόμηση. Ορισμός: Ένας Σύνθετος Τύπος Χωρίς Δόμηση είναι μία συλλογή από συστατικά, όπου ΔΕΝ υπάρχει σχέση μεταξύ των μερών της συλλογής, εκτός του ότι είναι μέλη της ίδιας ενότητας. Στην γλώσσα Pascal υπάρχουν 2 τέτοιου είδους τύποι: η εγγραφή και τα σύνολα.
14
1/11/2013
Κέρος Α. Ιωάννης
Σύνθετοι Τύποι ή Δομές Δεδομένων. Οι Δομές Δεδομένων μπορούν να χωριστούν και σε δύο άλλες κατηγορίες: Στατικές. Δυναμικές. Ορισμός: Στατικές Δομές Δεδομένων είναι αυτές που το πλήθος των στοιχείων τους είναι σταθερό και καθορίζεται (το πλήθος) στον ορισμό του τύπου στο τμήμα δηλώσεων του προγράμματος. Κλασικό παράδειγμα τέτοιας δομής είναι οι πίνακες, οι οποίοι μπορεί να σπαταλούν μνήμη αλλά είναι εύκολοι στον χειρισμό.
15
Ορισμός: Δυναμικές Δομές Δεδομένων είναι αυτές που ορίζονται κατά την διάρκεια εκτέλεσης του προγράμματος και πιθανόν να αυξομειώνεται. 1/11/2013
Κέρος Α. Ιωάννης