Η ΓΛΩΣΣΑ PASCAL
ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός
1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση τύπου Τύποι Ακεραίων Διάστημα τιμών Πρόσημο Πλήθος bytes shortint -128..127 NAI 1 integer -32768..32767 NAI 2 longint -2148483648..2147483647 NAI 4 byte 0..255 OXI 1 word 0..65535 OXI 2
Επιτρεπτές Πράξεις Ακεραίων + πρόσθεση - αφαίρεση * πολλαπλασιασμός div ακέραια διαίρεση (πηλίκο) mod υπόλοιπο διαίρεσης Παραδείγματα 27 div 6 = 4 16 div 17 = 0 36 div 6 = 6 27 mod 6 = 3 16 mod 17 = 16 36 mod 6 = 0
2. Πραγματικός (real) Χρησιμοποιείται εκεί που οι αριθμητικές τιμές δεν είναι ακέραιοι αριθμοί ή οι αναμενόμενες τιμές του είναι εκτός των ορίων του ακέραιου τύπου. Τύποι Πραγματικών Αριθμών real ( 2,9x10-39.. 1.7x10 38 ) single (-1.5x10-45.. 3.4x10 38 ) Double (-5.0x10-324.. 1.7x10 308 ) extended comp
Επιτρεπτές Πράξεις Πραγματικών Αριθμών + πρόσθεση - αφαίρεση * πολλαπλασιασμός / διαίρεση (πηλίκο) Αριθμητικές εκφράσεις είναι οι απεικονίσεις αριθμητικών παραστάσεων που μπορεί να περιέχουν σταθερές, μεταβλητές, συναρτήσεις, αριθμητικά σύμβολα και παρενθέσεις.
Προτεραιότητα Μαθηματικών Τελεστών Χαμηλότερη + - Υψηλότερη * / div mod Παραδείγματα 20 div 3 * 4 = 24 20 mod 3 * 4 = 8 6 * 3 / 2 * 4 = 36 6 * 3 / (2 * 4) = 2,25 6 + 3 / (2 * 4) = 6,375
3. Λογικός (boolean) Έχει δύο μόνο τιμές: Αληθή (true) Ψευδή (false) Επιτρεπτές πράξεις: Σύζευξη (and) Διάζευξη (or) Αποκλειστική διάζευξη (xor) Άρνηση (not)
Πίνακας Αλήθειας Των Λογικών Τελεστών P Q P and Q P or Q P xor Q Not P True True True True False False True False False True True False False True False True True True False False False False False True
Λογικές εκφράσεις είναι οι απεικονίσεις παραστάσεων που μπορεί να περιέχουν σταθερές, μεταβλητές, συναρτήσεις, αριθμητικά σύμβολα και παρενθέσεις και μπορούν να πάρουν μια λογική τιμή (true ή false). Μια λογική έκφραση παράγεται από δύο μεταβλητές ή σταθερές μέσων των σχεσιακών τελεστών.
Σχεσιακοί Τελεστές Περιγραφή Pascal Μεγαλύτερο από > Μικρότερο από < Μεγαλύτερο ή ίσο >= Μικρότερο ή ίσο <= Διάφορο <> Ανήκει in
Προτεραιότητα Τελεστών NOT * / DIV MOD AND + - OR XOR > < >= <= <> Μεγαλύτερη προτεραιότητα έχουν οι πράξεις μέσα σε παρενθέσεις. Όταν τα σύμβολα έχουν την ίδια προτεραιότητα τότε οι πράξεις εκτελούνται από αριστερά προς τα δεξιά.
4. Χαρακτήρας (char) Περιγράφει δεδομένα ενός χαρακτήρα Π.χ.: Α, Β, @,! Ο τύπος char είναι ένας διατεταγμένος τύπος ο οποίος περιλαμβάνει το σύνολο των χαρακτήρων του υπολογιστή μας. Διάταξη: 0,1,2,3,...9 A,B,C, Z, a,b,c, z και ακολουθούν οι ελληνικοί χαρακτήρες Α,Β,Γ,...Ω, α,β,γ,...ω
5. Αλφαριθμητικός (string) Είναι μία σειρά από 255 το πολύ χαρακτήρες. Π.χ.: Turbo Pascal, Bπ2, Ελένη, 1346, κενό (Null string) Προσοχή!!! Η τιμή του string 1346 είναι η σειρά των χαρακτήρων 1 3 4 6. Αν γράψουμε 1346 χωρίς τα εισαγωγικά τότε είναι ένας ακέραιος τον οποίο μπορούμε να χρησιμοποιήσουμε σε υπολογισμούς.
Δομή Προγράμματος Pascal Ένα πρόγραμμα Pascal αποτελείται από 3 τμήματα: Τίτλος Προγράμματος Τμήμα δηλώσεων Τμήμα εντολών
Τίτλος Προγράμματος Αρχίζει με τη λέξη-κλειδί program και ακολουθείται από ένα όνομα που χαρακτηρίζει όλο το πρόγραμμα. Σύνταξη: Program όνομα_προγράμματος;
Τμήμα Δηλώσεων Δηλώνουμε όλα τα στοιχεία που πρόκειται να χρησιμοποιηθούν στο πρόγραμμα Σταθερές Τύπους Μεταβλητές Υποπρογράμματα
Σταθερές Δηλώνονται με τη λέξη Const και περιέχουν τις σταθερές που πρόκειται να χρησιμοποιηθούν στο πρόγραμμα, δηλ. συμβολικά ονόματα για κάποιες τιμές που παραμένουν σταθερές και χρησιμοποιούνται συχνά μέσα στο πρόγραμμα. Σύνταξη: Const Όνομα = Τιμή; : = : : = :
Τύποι Εκτός από του στοιχειώδης τύπους της Pascal ο προγραμματιστής μπορεί να ορίσει και νέους τύπους δεδομένων. Σύνταξη: Η περιοχή τύπων δηλώνεται με τη λέξη-κλειδί Type Type Όνομα = Τύπος Δεδομένων; : = : : = :
Μεταβλητές Δηλώνονται με τη λέξη-κλειδί Var και περιέχει τις μεταβλητές που πρόκειται να χρησιμοποιηθούν στο πρόγραμμα. Σύνταξη: Var Όνομα : Τύπος Δεδομένων; Όταν περισσότερες από μία μεταβλητές είναι του ίδιου τύπου μπορούν να γραφτούν μαζί. Π.χ. var x:integer; y:integer; z:integer; var x,y,z:integer;
Υποπρογράμματα Δηλώσεις των υποπρογραμμάτων που ορίζει ο χρήστης εφόσον υπάρχουν Συναρτήσεις (functions) Υποπρογράμματα (procedures)
Τμήμα Εντολών Περιέχει τις εκτελέσιμες προτάσεις του προγράμματος. Αρχίζει με τη λέξη-κλειδί begin και τελειώνει με τη λέξη-κλειδί end. Το τέλος των δηλώσεων και των προτάσεων δηλώνεται με το διαχωριστικό χαρακτήρα (;) Στο τέλος του προγράμματος, δηλ. μετά το end βάζουμε τελεία.
Συνοπτικά η δομή φαίνεται παρακάτω: program όνομα_προγράμματος; const δηλώσεις σταθερών; type δηλώσεις τύπων δεδομένων; var δηλώσεις μεταβλητών; begin εντολή1; : εντολήν; end.