Pascal. 15 Νοεμβρίου 2011

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Pascal. 15 Νοεμβρίου 2011"

Transcript

1 Pascal 15 Νοεμβρίου Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε να την καλέσουμε (call). Όταν καλούμε μια διαδικασία εκτελούνται οι εντολές που αυτή περιέχει. Δείτε παράδειγμα 1: 1 program proc1; Listing 1: Ορισμός και κλήση procedure 3 procedure myproc; 4 begin 5 write('h kota ekave to augo,'); 6 write(' h to augo tnv kota; '); 7 writeln('to be or not to be?'); 8 end; 9 10 begin 11 myproc; 1 myproc; readln; 15 end. Σε αυτό ορίζεται μία procedure με όνομα myproc στις γραμμές 3 έως 8. Το σώμα της procedure δηλαδή οι εντολές που εκτελούνται όποτε την καλεί κανείς περιλαμβάνονται σε ένα begin-end μπλοκ. Όποτε δηλαδή κανείς καλεί την procedure εκτελούνται οι εντολές που περιέχονται εκεί. Παρατηρήστε ότι η γραμμή 3 τελειώνει με ένα ερωτηματικό όπως και το end της γραμμής 8 που κλείνει το σώμα της διαδικασίας όπως και κάθε εντολή που περιέχεται εκεί. Για να καλέσει κανείς τη συνάρτηση, αρκεί να αναφέρει το όνομά της, όπως στις γραμμές 11 και 1. Σημειώστε ότι οι εντολές της διαδικασίας δεν εκτελούνται αν δεν υπάρχει κάπου μία κλήση. Δηλαδή το γεγονός ότι υπάρχουν οι γραμμές 3 έως 8 δε σημαίνει απαραίτητα ότι θα εκτελεστούν κιόλας. Ο κανόνας είναι ότι η εκτέλεση του προγράμματος ξεκινάει με την πρώτη εντολή του κύριου begin-end μπλοκ του προγράμματος, το οποίο ξεκινάει στη γραμμή 10. Κάθε φορά που η εκτέλεση του προγράμματος συναντά μια κλήση συνάρτησης τότε η ροή του προγράμματος μεταφέρεται στο 1

2 begin-end μπλοκ της αντίστοιχης διαδικασίας και στη συνέχεια επιστρέφει στο σημείο αμέσως μετά την κλήση. Στο παραπάνω δηλαδή η ροή εκτέλεσης του προγράμματος ξεκινάει στη γραμμή 10 όπου βρίσκεται το begin του κύριου μπλοκ του προγράμματος. Όταν η ροή εκτέλεσης φτάσει στη γραμμή 11 (κλήση συνάρτησης) τότε μεταφέρεται στο μπλοκ των γραμμών 4 έως 8 όπου εκτελεί τις εκεί εντολές διαδοχικά. Μετά επιστρέφει στην αμέσως επόμενη εντολή του κύριου μπλοκ από την οποία πραγματοποιήθηκε η τελευταία κλήση δηλαδή τη γραμμή 1. Αυτή είναι επίσης κλήση συνάρτησης οπότε ξαναεκτελούνται οι εντολές των γραμμών 4 έως 8. Οι διαδικασίες μπορούν να παίρνουν κάποια ορίσματα (arguments) δηλαδή παραμέτρους. Για παράδειγμα το παρακάτω πρόγραμμα περιέχει μια συνάρτηση η οποία τυπώνει μερικά αστεράκια. Το πόσα αστεράκια θα τυπώσει καθορίζεται από την τιμή της παραμέτρου x. Το σώμα της διαδικασίας είναι ένα απλό for το οποίο τυπώνει τόσα αστέρια όσα ζητούνται μέσω της x και μετά αλλάζει γραμμή. 1 program proc; Listing : Ορισμός procedure με μία παράμετρο 3 procedure print_stars(x: integer); 4 var 5 i: integer; 6 begin 7 for i := 1 to x do 8 write('*'); 9 writeln; 10 end; 11 1 begin 13 print_stars (3); 14 print_stars (); 15 print_stars (5); readln; 18 end. Αν τρέξετε το παραπάνω πρόγραμμα θα δείτε στην οθόνη κάτι σαν αυτό: *** ** ***** Σε σχέση με το προηγούμενο παράδειγμα παρατηρούμε τα εξής: Η διαδικασία print_stars παίρνει μία παράμετρο x η οποία δηλώνεται μέσα σε παρενθέσεις ακριβώς όπως δηλώνονται και οι άλλες μεταβλητές σε ένα πρόγραμμα, δηλαδή αναφέρεται το όνομά της, μία άνω-κάτω τελεία και μετά ο τύπος της. Μέσα στο σώμα της διαδικασίας η παράμετρος x μπορεί να χρησιμοποιείται όπως και οι άλλες μεταβλητές, π.χ. στη γραμμή 7. Επίσης παρατηρούμε ότι προκειμένου να χρησιμοποιήσουμε τη μεταβλητή i στο βρόχο της γραμμής 7 πρέπει να τη δηλώσουμε σε ένα var μπλοκ στις γραμμες

3 4 και 5. Τέλος, για να καλέσουμε τη διαδικασία γράφουμε το όνομά της όπως στις γραμμές 13 έως 15 και μέσα σε παρενθέσεις δίνουμε την τιμή της παραμέτρου. Όταν εκτελούνται οι κλήσεις των γραμμών η ροή μεταφέρεται στις γραμμές 6-10 όπως και στο προηγούμενο παράδειγμα με τη διαφορά ότι αυτή τη φορά κατά τη διάρκεια εκτέλεσης των 6-10 υφίσταται και η μεταβλητή-παράμετρος x η οποία έχει την τιμή 3, ή 5 αντίστοιχα σε κάθε κλήση των γραμμών Μια διαδικασία μπορεί να παίρνει περισσότερες από μία παραμέτρους διάφορων τύπων. Αν για παράδειγμα θέλουμε να επεκτείνουμε τη συνάρτησή μας ώστε να παίρνει ως παράμετρο όχι μόνο το πόσους αλλά και ποιους χαρακτήρες θα τυπώνει μπορουμε να γράψουμε το εξής: 1 program proc3; Listing 3: Ορισμός procedure με δύο παραμέτρους 3 procedure print_chars(c: char; x: integer); 4 var 5 i: integer; 6 begin 7 for i := 1 to x do 8 write(c); 9 end; begin 1 print_chars('*', 3); 13 print_chars('.', 1); 14 print_chars('*', 3); readln; 17 end. Στο παράδειγμα 3 προσθέτουμε μία επιπλέον παράμετρο με όνομα c και τύπο char. Διατηρούμε και την x όπως και προηγουμένως. Μεταξύ τους τις χωρίζουμε με το ερωτηματικό. Στις γραμμές 1-14 υπάρχουν οι αντίστοιχες κλήσεις. Μέσα σε παρενθέσεις τοποθετούμε τόσες παραμέτρους όσες δέχεται η συνάρτηση. Οι τιμές που δίνουμε σε κάθε κλήση αντιστοιχίζονται μία προς μία στις αντίστοιχες παραμέτρους. Δηλαδή η κλήση της γραμμής 1 έχει σαν αποτέλεσμα να δοθεί στην παράμετρο c η τιμή '*' και στην x η τιμή 3, ενώ η κλήση της γραμμής 13 δίνει αντίστοιχα στην c την τιμή '.' και στην x την τιμή 1. Συνοψίζοντας ο ορισμός μιας διαδικασίας αποτελείται από τα εξής: Την επικεφαλίδα της διαδικασίας η οποία με τη σειρά της αποτελείται από τη δεσμευμένη λέξη procedure, το όνομα της διαδικασίας, τη λίστα των τυπικών παραμέτρων της διαδικασίας (αν υπάρχουν) μέσα σε παρενθέσεις και στο τέλος το ελληνικό ερωτηματικό. Η λίστα των τυπικών παραμέτρων είναι μια λίστα δηλώσεων χωρισμένων με ελληνικά ερωτηματικά. Κάθε δήλωση είναι της μορφής onoma: typos ή on1, on,..., onx: typos όπως δηλαδή και στις δηλώσεις μεταβλητών. 3

4 Ένα begin-end μπλοκ το οποίο περιέχει τις εντολές της διαδικασίας. Του μπλοκ μπορεί να προηγείται ένα μπλοκ var το οποίο περιέχει δηλώσεις μεταβλητών. Ένα παράδειγμα Ας δούμε με ένα παράδειγμα τη χρήση μιας απλής διαδικασίας όπως η παραπάνω. Ας υποθέσουμε ότι θέλουμε να γράψουμε ένα πρόγραμμα το οποίο να τυπώνει στην οθόνη ένα τρίγωνο με αστεράκια και τελείες. Το μέγεθος του τριγώνου θα το δίνει ο χρήστης. Θα μπορούσε να είναι όπως το παράδειγμα 4. 1 program triangle; var 3 n, i, j: integer; Listing 4: Κάποιο τρίγωνο 4 5 begin 6 write('dose to n:'); 7 readln(n); 8 9 for j := n div downto 0 do 10 begin 11 for i := 1 to j do 1 write('*'); 13 for i := 1 to n - * j do 14 write('.'); 15 for i := 1 to j do 16 write('*'); 17 writeln; 18 end; 19 end. Το ίδιο πράγμα θα μπορούσαμε να το γράψουμε όπως στο παράδειγμα 5. 1 program triangle3; Listing 5: Το ίδιο τρίγωνο 3 procedure print_chars(c: char; x: integer); 4 var 5 k: integer; 6 begin 7 for k := 1 to x do 8 write(c); 9 end; var 1 n, j: integer; 4

5 13 begin 14 write('dose to n:'); 15 readln(n); for j := n div downto 0 do 18 begin 19 print_chars('*', j); 0 print_chars('.', n - * j); 1 print_chars('*', j); writeln; 3 end; 4 end. 3 Functions (συναρτήσεις) Πολλές φορές χρειάζεται να πραγματοποιούνται υπολογισμοί οι οποίοι απαιτούν την εκτέλεση περισσότερων από μία εντολών και να επιστρέφουν τελικά ένα αποτέλεσμα. Η ομαδοποίησή τους σε διαδικασίες δεν αρκεί καθώς οι διαδικασίες δεν επιστρέφουν κάποιο αποτέλεσμα. Για αυτόν το σκοπό μπορούν να χρησιμοποιηθούν στην Pascal οι λεγόμενες συναρτήσεις οι οποίες λειτουργούν όπως και οι διαδικασίες αλλά επιπρόσθετα μπορούν να επιστρέφουν και μία τιμή. Ένα παράδειγμα τέτοιας διαδικασίας είναι ο υπολογισμός της απόλυτης τιμής ενός αριθμού. Θυμίζουμε ότι η απόλυτη τιμή ενός αριθμού είναι ο ίδιος ο αριθμός αν είναι θετικός ή ο αντίθετός του στην περίπτωση που είναι αρνητικός. Οι εντολές που κάνουν τον υπολογισμό θα μπορούσαν να είναι οι παρακάτω, υποθέτωντας ότι η μεταβλητή x κρατάει τον αριθμό και θέλουμε η απόλυτη τιμή του να αποθηκευτεί στη μεταβλητή apolyti: 1 if x < 0 then apolyti := -x; 3 else 4 apolyti := x; Ας δούμε πώς θα μπορούσαμε να ορίσουμε μια συνάρτηση η οποία κάνει αυτόν τον υπολογισμό στο πρόγραμμα 6 εξετάζοντας τις διαφορές που απαιτούνται σε σχέση με τον ορισμό μιας procedure. Listing 6: Συνάρτηση υπολογισμού απόλυτης τιμής 1 function myabs(x: integer) : integer; begin 3 if x < 0 then 4 myabs := -x 5 else 6 myabs := x; 7 end; Στη γραμμή 1 ξεκινάμε την επικεφαλίδα της διαδικασίας χρησιμοποιώντας τη δεσμευμένη λέξη function αντί για την procedure. Στη συνέχεια δηλώνουμε το όνομα της συνάρτησης και τα ορίσματά της μέσα σε παρενθέσεις όπως ακριβώς και στις procedures. Αμέσως μετά την παρένθεση 5

6 όμως και πριν το ερωτηματικό που τερματίζει την επικεφαλίδα δηλώνουμε τον τύπο της τιμής που επιστρέφει η συνάρτηση. Ενώ στις procedures αμέσως μετά την παρένθεση που κλείνει θα βάζαμε το ερωτηματικό, στις functions βάζουμε άνω-κάτω τελεία και το όνομα ενός τύπου, στο παράδειγμά μας integer. Αμέσως μετά συνεχίζουμε όπως και στις procedures, δηλώνοντας με τη var όσες μεταβλητές θα θέλαμε να χρησιμοποιεί η συνάρτησή μας και τις εντολές της μέσα σε ένα μπλοκ begin-end. Η μόνη διαφορά είναι ότι μέσα στο μπλοκ begin-end μπορούμε να χρησιμοποιήσουμε το όνομα της συνάρτησης (στο παράδειγμά μας myabs) ως όνομα μεταβλητής στην οποία αποθηκεύουμε την τιμή που θέλουμε να επιστραφεί από τη συνάρτηση. Ο μηχανισμός εκτέλεσης της Pascal λέει ότι η τιμή που επιστρέφεται είναι η τιμή της μεταβλητής αυτής (εκείνης που έχει το όνομα της συνάρτησης) τη στιγμή που τερματίζεται η εκτέλεσή της, δηλαδή τη στιγμή που η εκτέλεση φτάνει στο end; που κλείνει το μπλοκ begin-end της συνάρτησης. Στο παράδειγμα 3 φαίνεται πώς μπορούμε να καλέσουμε μία συνάρτηση. 1 var arithmos: integer; 3 apotelesma: integer; 4 begin 5 write(' Dose evav ari8mo: '); 6 readln( arithmos); 7 apotelesma := myabs( arithmos); 8 writeln('h apolytn timn toy ', arithmos, ' eivai ', apotelesma); Για να καλέσουμε μία συνάρτηση γράφουμε το όνομά της ακολουθούμενο από τις παραμεέτρους μέσα σε παρενθέσεις (όπως και στις procedures). Η κλήση της συνάρτησης πραγματοποιείται στη γραμμή 7. Η συνάρτηση καλείται με παράμετρο την τιμή της μεταβλητής arithmos. Η τιμή που επιστρέφει αποθηκεύεται στη μεταβλητή apotelesma. Η εντολή ανάθεσης τιμής της γραμμής 7 λειτουργεί ως ένα βαθμό όπως και οποιαδήποτε άλλη εντολή ανάθεσης π.χ. apotelesma := 4 * x δηλαδή πρώτα υπολογίζεται η τιμή της παράστασης δεξιά από το := και στη συνέχεια το αποτέλεσμα αποθηκεύεται στη μεταβλητή που είναι αριστερά. Στη συγκεκριμένη περίπτωση η έκφραση δεξία από το := είναι η κλήση συνάρτησης myabs(arithmos). Από άποψη συντακτική η Pascal επιτρέπει την κλήση μιας συνάρτησης οπουδήποτε επιτρέπεται η εμφάνιση μιας παράστασης με τύπο ίδιο με εκείνον που επιστρέφει η συνάρτηση. Στο συγκεκριμένο παράδειγμα, αφού η συνάρτηση myabs επιστρέφει integer μπορούμε να την καλέσουμε οπουδήποτε επιτρέπεται μία integer έκφραση, π.χ. σε παραστάσεις με τους τελεστές +, -, *, mod, div κτλ. Αν η συνάρτησή μας επέστρεφε real δε θα μπορούσαμε να την χρησιμοποιήσουμε με τον mod ή τον div. Από άποψη λειτουργική, όταν σε μία έκφραση συναντάται μία κλήση συνάρτησης τότε καλείται η συνάρτηση αυτή και η τιμή που επιστρέφει αντικαθιστά την κλήση της συνάρτησης στην έκφραση αυτή. Για παράδειγμα αν σε ένα πρόγραμμα Pascal υπήρχε η παράσταση 5 * τότε η Pascal (ακολουθώντας τον κανόνα ότι ο πολλαπλασιασμός έχει υψηλότερη προτεραιότητα από την πρόσθεση) θα εκτελούσε την πράξη 5 * 7 και θα αντικαθιστούσε το αποτέλεσμα 35 στην προηγούμενη έκφραση οπότε θα προέκυπτε το οποίο θα υπολόγιζε και θα προέκυπτε το τελικό αποτέλεσμα 47. Με ανάλογο τρόπο αν πρέπει να υπολογιστεί η έκφραση 5 * myabs(-7) + 1 η Pascal θα προσπαθήσει να υπολογίσει το 5 * myabs*(-7). Επειδή εκεί εμπλέκεται η κλήση της συνάρτησης, θα διέκοπτε προσωρινά την εκτέλεση των πράξεων και θα καλούσε τη συνάρτηση myabs με παράμετρο -7. Η κλήση αυτή θα επέστρεφε την τιμή 7. Η Pascal θα αντικαθιστούσε την 6

7 κλήση myabs(-7) με το αποτέλεσμά της οπότε θα προέκυπτε 5 * και θα συνέχιζε όπως και στο προηγούμενο παράδειγμα. 4 Εμβέλεια, τοπικές και καθολικές μεταβλητές Δείτε το πρόγραμμα 4. 1 program scopes1; var 3 a: integer; 4 5 procedure p; 6 var 7 b: integer; 8 begin 9 b := 5; 10 writeln('to a eivai ', a); 11 writeln('to b eivai ', b); 1 end; begin 15 a := 3; 16 p; 17 end. Εκεί δηλώνεται μία procedure p στις γραμμές 5-1. Η procedure χρησιμοποιεί μία μεταβλητή b η οποία δηλώνεται σε ένα var-block στις γραμμές 6-7. Το κύριο μπλοκ του προγράμματος (γραμμές 14-17) έχει και αυτό ένα var-block στις γραμμές -3. Αν εκτελεστεί το πρόγραμμα τυπώνεται στην οθόνη το εξής: To a eivai 3 To b eivai 5 Οι εντολές που τυπώνουν τα παραπάνω μηνύματα βρίσκονται μέσα στην procedure p. Βλέπουμε ότι οι μεταβλητές a και b είναι προσβάσιμες από εκείνο το σημείο του προγράμματος. Αν όμως προσπαθήσουμε να μεταφέρουμε τη γραμμή 11 έξω από την procedure p και να την τοποθετήσουμε μετά τη γραμμή 16 ο μεταγλωττιστής θα μας δώσει σφάλμα παραπονούμενος ότι η μεταβλητή b δεν έχει δηλωθεί. Το ίδιο θα συμβεί αν μεταφέρουμε τις γραμμές -3 ώστε να βρεθούν αμέσως μετά τη γραμμή 1. Ο μεταγλωττιστής θα δώσει ανάλογο σφάλμα λέγοντας ότι η μεταβλητη a που αναφέρεται στη γραμμή 10 δεν έχει δηλωθεί. Βλέπουμε ότι τα ονόματα των μεταβλητών δεν είναι `ορατά' σε οποιοδήποτε σημείο του προγράμματος. Μπορούμε να τα χρησιμοποιούμε μόνο σε συγκεκριμένα σημεία. Για παράδειγμα τη μεταβλητή b του παραπάνω παραδείγματος μπορούμε να τη χρησιμοποιούμε μόνο μέσα στο σώμα της procedure p, δηλαδή από τη γραμμή 8 μέχρι τη 1. Το ίδιο ισχύει και για τις παραμέτρους των procedures και των functions, αν για παράδειγμα είχαμε μία procedure όπως στο παράδειγμα 4 τότε τις μεταβλητές x και y θα μπορούσαμε να τις χρησιμοποιούμε μόνο μέσα στο begin-end μπλοκ της procedure. 7

8 1 procedure proc(x: real; y: integer) var 3 a: real; 4 begin 5 a := x + y; 6 end; Αυτού του είδους οι μεταβλητές ονομάζονται τοπικές επειδή μπορούν να χρησιμοποιηθούν μόνο σε ένα μέρος του προγράμματος. Έχουμε πει ότι η δήλωση μιας μεταβλητής ισοδυναμεί με τη δέσμευση μνήμης κατάλληλης για να αποθηκεύσει την τιμή της μεταβλητής. Δείτε και το παράδειγμα 4. 1 procedure p1; var 3 a: integer; 4 begin 5 end; 6 7 procedure p; 8 var 9 a: integer; 10 begin 11 end; Εκεί βλέπουμε δύο procedures σε κάθε μία από τις οποίες δηλώνεται μία μεταβλητή a. Μία εύλογη απορία είναι η εξής: Ποια είναι η σχέση της θέσης μνήμης που δεσμεύεται για τη μεταβλητή a της procedure p1 με εκείνην της συνώνυμης μεταβλητής της procedure p; Η απάντηση είναι ότι δεν έχουν καμία σχέση. Το γεγονός ότι έχουν το ίδιο όνομα δεν έχει καμία σημασία για την Pascal. Ο κανόνας είναι ότι για κάθε όνομα μεταβλητής που εμφανίζεται σε ένα var μπλοκ ή στη λίστα παραμέτρων μίας procedure ή function, δεσμεύεται μία ανάλογη θέση μνήμης, άσχετα αν το όνομα αυτό δηλώνεται και κάπου αλλού. Η δέσμευση αυτής της μνήμης ισχύει για όσο εκτελείται η συγκεκριμένη procedure ή function και παύει να ισχύει όταν τερματιστεί η εκτέλεση. 5 Call by value, call by reference Ένα τελευταίο θέμα σχετικά με τις κλήσεις συναρτήσεων και διαδικασιών είναι το εξής: Είδαμε ότι οι τιμές των ορισμάτων στην κλήση ενός υποπρογράμματος τίθενται στις αντίστοιχες παραμέτρους όταν αυτό καλείται. Π.χ. στο απόσπασμα 5 1 procedure p(a: integer); begin 3 writeln(a); a:= 6; writeln(a); 4 end; b:= 5; p(b); βλέπουμε μια διαδικασία p η οποία παίρνει μία παράμετρο a. Στη γραμμή 3 βλέπουμε μία κλήση αυτής της διαδικασίας. Ως όρισμα δίνεται η μεταβλητή b η οποία εκείνη τη στιγμή έχει την τιμή 8

9 5. Υπενθυμίζουμε ότι όταν ξεκινήσει να εκτελείται η p δημιουργείται η μεταβλητή a ως τοπική μεταβλητή η οποία παίρνει αρχικά την τιμή 5 στο συγκεκριμένο παράδειγμα. Μέσα στο σώμα της p η τοπική μεταβλητή αλλάζει τιμή και γίνεται 6. Το ερώτημα είναι εάν η τιμή της μεταβλητής b αλλάζει όταν αλλάζει η τιμή της τοπικής μεταβλητής a στην p. Η απάντηση είναι ότι, όχι, η τιμή της μεταβλητής b δεν αλλάζει. Ο λόγος είναι ότι οι δύο μεταβλητές δε συνδέονται μεταξύ τους με μόνη εξαίρεση τη στιγμή που η τιμή της μίας αποθηκεύεται στην άλλη. Αυτός ο τρόπος περάσματος παραμέτρων σε υποπρογράμματα λέγεται call by value (κλήση κατ' αξία) γιατί αυτό που περνιέται στο υποπρόγραμμα είναι η τιμή μιας ποσότητας και όχι το σημείο στο οποίο είναι αποθηκευμένη ώστε να μπορεί το υποπρόγραμμα να την τροποποιήσει. Οπότε σύμφωνα με τα παραπάνω, δεν υπάρχει τρόπος να μας επιστρέψει ένα υποπρόγραμμα πάνω από μία ποσότητα. Αν για παράδειγμα θέλαμε να γράψουμε ένα υποπρόγραμμα που έπαιρνε δύο παραμέτρους, π.χ. τις συντεταγμένες x και y ενός διανύσματος στο χώρο δύο διαστάσεων και θέλαμε να μας επιστρέψει τις συντεταγμένες ενός διανύσματος κάθετου προς αυτό, δεν θα μπορούσαμε να το κάνουμε σύμφωνα με τα όσα ξέρουμε μέχρι στιγμής καθώς ο μόνος τρόπος που υπάρχει είναι να ορίσουμε μία function η οποία όμως επιστρέφει το πολύ μία τιμή¹. Για το λόγο αυτό, δίνεται από την Pascal η δυνατότητα ορισμού υποπρογραμμάτων τα οποία παίρνουν ένα ή περισσότερα ορίσματά τους όχι κατ' αξία αλλά κατ όρισμα. Αυτός ο τρόπος περάσματος ορισμάτων λέγεται και call by reference γιατί αντί για να περνάει στο υποπρόγραμμα την τιμή μίας ποσότητας περνάει τη θέση μνήμης στην οποία αυτή είναι αποθηκευμένη. Ο προγραμματιστής δεν χρειάζεται να ασχοληθεί με τις τεχνικές λεπτομέρειες του χειρισμού της μνήμης, απλώς δηλώνει τα ορίσματα χρησιμοποιώντας πριν από το όνομά τους τη λέξη var. Δείτε το παράδειγμα 5. Εκεί ορίζεται στις γραμμές 3-8 μία διαδικασία p η οποία παίρνει τρεις παραμέτρους τις οποίες και αλλάζει. Πιο κάτω στο κυρίως πρόγραμμα 10-18, ορίζονται τρεις μεταβλητές οι οποίες παίρνουν τις τιμές 1, και 3. Στη συνέχεια καλείται η διαδικασία με ορίσματα τις τρεις αυτές μεταβλητές και αμέσως μετά τυπώνονται οι τιμές τους στη γραμμή program byref; 3 procedure p(a: integer; b: integer; c: integer); 4 begin 5 a := 11; 6 b := 1; 7 c := 13; 8 end; 9 10 var 11 i,j,k: integer; 1 begin 13 i := 1; 14 j := ; 15 k := 3; 16 p(i,j,k); 17 writeln(i, ' ', j, ' ', k); ¹Θα μπορούσαμε να χρησιμοποιήσουμε records αλλά δεν τα έχουμε μάθει ακόμα 9

10 18 end. Αν τρέξετε το πρόγραμμα ως έχει θα σας δώσει στην οθόνη 1 3 που σημαίνει ότι οι τιμές των μεταβλητών i, j και k στο κυρίως πρόγραμμα δεν άλλαξαν μετά την κλήση της p. Αυτό είναι φυσικό, αφού είπαμε ότι οι τιμές των παραμέτρων περνιόνται κατ' αξία, δηλαδή οι τιμές τους. Αν όμως αλλάξουμε την επικεφαλίδα της p έτσι ώστε να γίνει procedure p(a: integer; var b: integer; c: integer); δηλαδή προσθέσουμε τη λέξη var πριν από το όνομα της παραμέτρου b και τρέξουμε το πρόγραμμα θα δούμε στην οθόνη δηλαδή η μεταβολή της μεταβλητής b μέσα στο υποπρόγραμμα `πέρασε' και στο κύριως πρόγραμμα, δηλαδή και στην τιμή της μεταβλητής j που βρίσκεται έξω από το υποπρόγραμμα. 10

Pascal. 26 Οκτωβρίου 2011

Pascal. 26 Οκτωβρίου 2011 Pascal 6 Οκτωβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

Διαβάστε περισσότερα

Pascal, απλοί τύποι, τελεστές και εκφράσεις

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

Διαβάστε περισσότερα

Σημειώσεις για την Pascal

Σημειώσεις για την Pascal Σημειώσεις για την Pascal 10 Νοεμβρίου 2013 1 Γλώσσες προγραμματισμού Οι σύγχρονοι μικροεπεξεργαστές μπορούν μεταξύ άλλων να εκτελούν αριθμητικές και λογικές πράξεις και να διαβάζουν και γράφουν στη μνήμη

Διαβάστε περισσότερα

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης Εντολές Ελέγχου 2 Γενικά Εντολές λήψης αποφάσεων Επιτρέπουν στο πρόγραμμα να εκτελεί διαφορετικές

Διαβάστε περισσότερα

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού

Διαβάστε περισσότερα

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Κεφάλαιο 7: Υποπρογράμματα Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υποπρογραμμάτων (subprogram abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων

Διαβάστε περισσότερα

Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal»

Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal» Ενισχυτική διδασκαλία διδακτικές ενότητες αλγοριθμικής και εισαγωγής στον προγραμματισμό Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal» διδάσκων: χρήστος

Διαβάστε περισσότερα

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL )Βασικά στοιχεία Αναγνωριστικά (Identifiers) Τα αναγνωριστικά είναι ονόματα με τα οποία μπορούμε να αναφερόμαστε σε αποθηκευμένες

Διαβάστε περισσότερα

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΕΝΙΚΗ ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ Program Ονομα_προγραμματος; «πρόγραμμα» Πρόγραμμα 1 Program Lesson1_Program1; Write('Hello World!!!'); {σχόλια} Επεξήγηση Προγράμματος Program Lesson1_Program1;

Διαβάστε περισσότερα

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Μάθημα 7 - Υποπρογράμματα Εργαστήριο 11 Ο TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Βασικές Έννοιες: Υποπρόγραμμα, Ανάλυση προβλήματος, top down σχεδίαση, Συνάρτηση, Διαδικασία, Παράμετρος, Κλήση συνάρτησης, Μετάβαση

Διαβάστε περισσότερα

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ 9.1 Εντολές Εισόδου/εξόδου Στην Pascal, 1. Tα δεδομένα των προγραμμάτων λαμβάνονται: είτε από το πληκτρολόγιο είτε από ένα αρχείο με τη χρήση των διαδικασιών read και readln,

Διαβάστε περισσότερα

Pascal. 1 Γλώσσες προγραμματισμού. 21 Οκτωβρίου 2011

Pascal. 1 Γλώσσες προγραμματισμού. 21 Οκτωβρίου 2011 Pascal 21 Οκτωβρίου 2011 1 Γλώσσες προγραμματισμού Οι μικροεπεξεργαστές των υπολογιστών μπορούν μεταξύ άλλων να εκτελούν αριθμητικές και λογικές πράξεις και να διαβάζουν και γράφουν στη μνήμη του υπολογιστή.

Διαβάστε περισσότερα

Κεφάλαιο 7: Υπορουτίνες

Κεφάλαιο 7: Υπορουτίνες Κεφάλαιο 7: Υπορουτίνες Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υπορουτινών (subroutine abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων που μπορεί

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888 ΕΡΩΤΗΣΕΙΣ 1. Να αναφέρετε μερικά από τα ιδιαίτερα χαρακτηριστικά της Pascal. 2. Ποιο είναι το αλφάβητο της Pascal; 3. Ποια είναι τα ονόματα-ταυτότητες και σε τι χρησιμεύουν; 4. Σε τι χρησιμεύει το συντακτικό

Διαβάστε περισσότερα

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

Διαβάστε περισσότερα

Η γλώσσα προγραμματισμού Strange

Η γλώσσα προγραμματισμού Strange Προγραμματιστική άσκηση: Η γλώσσα προγραμματισμού Strange Η Strange είναι μια μικρή γλώσσα προγραμματισμού. Παρόλο που οι προγραμματιστικές της ικανότητες είναι μικρές, η εκπαιδευτική αυτή γλώσσα περιέχει

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

Εντολές ελέγχου ροής if, for, while, do-while

Εντολές ελέγχου ροής if, for, while, do-while Εντολές ελέγχου ροής if, for, while, do-while 1 Μαρτίου 014 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή

Διαβάστε περισσότερα

Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού

Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού Προπτυχιακό μάθημα Αρχές Γλωσσών Προγραμματισμού Π. Ροντογιάννης 1 Μεταγλωττιστής Πρόγραμμα Διαβάζει προγράμματα δεδομένης γλώσσας (πηγαία γλώσσα) και τα μετατρέπει

Διαβάστε περισσότερα

Κεφάλαιο 12 : ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

Κεφάλαιο 12 : ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 12 : ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ 1. Συναρτήσεις ΣΥΝΑΡΤΗΣΕΙΣ 1.1. Ο λόγος ύπαρξης των συναρτήσεων Όπως είδαµε µία διαδικασία µπορεί να υπολογίζει περισσότερα από ένα αποτελέσµατα τα

Διαβάστε περισσότερα

Ψευδοκώδικας. November 7, 2011

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

Διαβάστε περισσότερα

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές Μεταβλητές 2 Δήλωση μεταβλητών Η δήλωση (declaration) πληροφορεί το μεταγλωττιστή για το όνομα και

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1

Διαβάστε περισσότερα

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ενότητα 7: Υπορουτίνες Καθ. Γιάννης Γαροφαλάκης Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ και Πληροφορικής Ορισμός Αφαίρεση με χρήση υπορουτινών (subroutine abstraction)

Διαβάστε περισσότερα

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal Δοµή προγράµµατος 1. Δοµή προγράµµατος program όνοµα_προγράµµατος(αρχείο_1, αρχείο_2,...αρχείο_ν); ΕΠΙΚΕΦΑΛΙΔΑ ΒΙΒΛΙΟΘΗΚΕΣ uses όνοµα_βιβλιοθήκης,όνοµα_βιβλιοθήκης;

Διαβάστε περισσότερα

Συναρτήσεις. Υποπρόγραμμα

Συναρτήσεις. Υποπρόγραμμα Συναρτήσεις Υποπρόγραμμα Ένα σύνολο από εντολές που κάνουν κάτι συγκεκριμένο, έχουν στενή σχέση/εξάρτηση μεταξύ τους, έχουν «χαλαρή» σύνδεση με τον υπόλοιπο κώδικα, μπορεί να εξαχθεί από το πρόγραμμά μας

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ ΘΕΜΑ Α Α.1 Να χαρακτηρίσετε σωστή (Σ) ή λανθασμένη (Λ) καθεμία από τις παρακάτω προτάσεις (Μονάδες 10) 1. Ένας αλγόριθμος μπορεί να έχει άπειρα βήματα

Διαβάστε περισσότερα

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δείκτες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Τι είναι ο δείκτης Ένας δείκτης είναι μια μεταβλητή που περιέχει μια διεύθυνση μνήμης. Θυμηθείτε πως

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β. ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για

Διαβάστε περισσότερα

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή Αντίρριο, 05/04/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» To δεύτερο μέρος της εργασίας έχει ως στόχο την ανάπτυξη του συντακτικού αναλυτή με χρήση του bison / byacc. Στο

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Προγραμματισμός ΙI (Θ)

Προγραμματισμός ΙI (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017

Διαβάστε περισσότερα

ιαφάνειες παρουσίασης #3

ιαφάνειες παρουσίασης #3 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Σύντομες εισαγωγικές σημειώσεις για την. Matlab Σύντομες εισαγωγικές σημειώσεις για την Matlab Δήλωση Μεταβλητών Για να εισάγει κανείς δεδομένα στη Matlab υπάρχουν πολλοί τρόποι. Ο πιο απλός είναι στη γραμμή εντολών να εισάγουμε αυτό που θέλουμε και

Διαβάστε περισσότερα

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

Διαβάστε περισσότερα

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD)

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD) Η Γλώσσα Pascal Χαρακτηριστικά Τύποι Δεδοµένων Δοµή προγράµµατος 1. Βασικές έννοιες Χαρακτηριστικά της γλώσσας Pascal Γλώσσα προγραµµατισµού Συντακτικό Σηµασιολογία Αλφάβητο της γλώσσας Pascal (Σύνολο

Διαβάστε περισσότερα

Προγραμματισμός PASCAL

Προγραμματισμός PASCAL Προγραμματισμός PASCAL 1 PASCAL Η PASCAL σχεδιάστηκε από τον Worth το 1968 στη Ζυρίχη, αρχικά σαν εργαλείο για τη διδασκαλία προγραμματισμού. Είναι γλώσσα για σειριακό προγραμματισμό. 2 Απλή και εύκολη

Διαβάστε περισσότερα

Γραπτές εξετάσεις στο μάθημα: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Θ) Εισηγητής: Γεωργίου Χρήστος ΘΕΜΑΤΑ & ΑΠΑΝΤΗΣΕΙΣ. Β. Χαρακτήρας(Αλφαριθμητικά)

Γραπτές εξετάσεις στο μάθημα: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Θ) Εισηγητής: Γεωργίου Χρήστος ΘΕΜΑΤΑ & ΑΠΑΝΤΗΣΕΙΣ. Β. Χαρακτήρας(Αλφαριθμητικά) Γραπτές εξετάσεις στο μάθημα: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Θ) Εισηγητής: Γεωργίου Χρήστος ΘΕΜΑΤΑ & ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α Α1. Να γράψετε στην κόλλα σας τους αριθμούς της στήλης Α που αντιστοιχούν με τα γράμματα

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης)

ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης) ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης) Τι είναι οι εντολές Ελέγχου και Επιλογής στην Pascal; Ποιες είναι οι εντολές Ελέγχου και Επιλογής στην Pascal;

Διαβάστε περισσότερα

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

Διαβάστε περισσότερα

Λογισµικό (Software SW) Γλώσσες

Λογισµικό (Software SW) Γλώσσες Λογισµικό (Software SW) Γλώσσες Προγραµµατισµού Οι γενιές των γλωσσών προγραµµατισµού Προβλήµατα που επιλύονται σε ένα περιβάλλον στο οποίο ο άνθρωπος πρέπει να προσαρµόζεται στα χαρακτηριστικά της µηχανής

Διαβάστε περισσότερα

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

Διαβάστε περισσότερα

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση Σκοπός Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση. Επανάληψη των βασικών εννοιών της PASCAL και του προγραμματισμού οι έννοιες της μεταβλητής, του τύπου δεδομένων,

Διαβάστε περισσότερα

ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α A1. 2-Λάθος 3-Λάθος 4-Σωστό 5-Λάθος A2. integer. real. Boolean. char. string A3.

ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α A1. 2-Λάθος 3-Λάθος 4-Σωστό 5-Λάθος A2. integer. real. Boolean. char. string A3. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΘΕΜΑ Α A1. ΚΥΡΙΑΚΗ 16/04/2014- ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΔΕΚΑΠΕΝΤΕ (15) ΑΠΑΝΤΗΣΕΙΣ 1-Σωστό

Διαβάστε περισσότερα

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας

Διαβάστε περισσότερα

3 ο Εργαστήριο Μεταβλητές, Τελεστές

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 4 η Τελεστές Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Συναρτήσεις (Functions) Οι βασικές λειτουργικές ενότητες ενός προγράμματος C Καλούνται με ορίσματα που αντιστοιχούνται σε

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα 9: Συναρτήσεις Εμβέλεια Κουκουλέτσος Κώστας Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστικών Συστημάτων

Διαβάστε περισσότερα

5ο σετ σημειώσεων - Δείκτες

5ο σετ σημειώσεων - Δείκτες 5ο σετ σημειώσεων - Δείκτες 11 Ιουνίου 01 1 Γενικά Σύμφωνα με το γενικό μοντέλο υπολογιστή, ένας υπολογιστής είναι μία μηχανή που διαθέτει μία κεντρική μονάδα επεξεργασίας η οποία μπορεί μεταξύ άλλων να

Διαβάστε περισσότερα

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα. ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων. Όταν ένα τμήμα προγράμματος επιτελεί ένα αυτόνομο

Διαβάστε περισσότερα

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1 Γλώσσα Προγραμματισμού C++ ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1 Τα δεδομένα Οι σταθερές Τα δεδομένα (πληροφορίες-data) είναι απαραίτητα στοιχεία ενός προγράμματος, καθώς οι βασικές λειτουργίες ενός προγράμματος είναι

Διαβάστε περισσότερα

ιαφάνειες παρουσίασης #4

ιαφάνειες παρουσίασης #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

Η γλώσσα προγραμματισμού EEL

Η γλώσσα προγραμματισμού EEL Προγραμματιστική άσκηση: Η γλώσσα προγραμματισμού EEL Η EEL (Early Experimental Language) είναι μια μικρή γλώσσα προγραμματισμού. Παρόλο που οι προγραμματιστικές της ικανότητες είναι μικρές, η εκπαιδευτική

Διαβάστε περισσότερα

Υπο-προγράμματα στη Fortran

Υπο-προγράμματα στη Fortran ΦΥΣ 145 - Διαλ.05 1 Υπο-προγράμματα στη Fortran q Mέχρι τώρα τα προβλήματα και τα προγράμματα που έχουμε δεί ήταν αρκετά απλά και επομένως ένα και μόνο πρόγραμμα ήταν αρκετό για να τα λύσουμε q Όταν τα

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

Διαβάστε περισσότερα

Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α. Σπυρόπουλος Α. Μπουντουβής

Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α. Σπυρόπουλος Α. Μπουντουβής ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α Σπυρόπουλος Α Μπουντουβής Αθήνα, 2015 v13_061015 Στον οδηγό αυτό θα χρησιμοποιηθούν

Διαβάστε περισσότερα

8 FORTRAN 77/90/95/2003

8 FORTRAN 77/90/95/2003 ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 1: Εισαγωγή... 17 1.1. Ανασκόπηση της ιστορίας των υπολογιστών... 18 1.2. Πληροφορία και δεδομένα... 24 1.3. Ο Υπολογιστής... 26 1.4. Δομή και λειτουργία του υπολογιστή... 28 1.5.

Διαβάστε περισσότερα

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό, αν είναι

Διαβάστε περισσότερα

2ο σετ σημειώσεων. 1 Εντολές εκτέλεσης υπό συνθήκη. 19 Μαρτίου 2012

2ο σετ σημειώσεων. 1 Εντολές εκτέλεσης υπό συνθήκη. 19 Μαρτίου 2012 ο σετ σημειώσεων 19 Μαρτίου 01 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή if. Συντάσσεται ως εξής: 1 if

Διαβάστε περισσότερα

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΝΕΟ ΚΑΙ ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΝΕΟ ΚΑΙ ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛΑ ΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΚΑΙ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α A ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ ΟΜΑ Α Β ) ΣΑΒΒΑΤΟ 28 ΜΑΪΟΥ 2016 ΕΞΕΤΑΖΟΜΕΝΟ

Διαβάστε περισσότερα

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ

Διαβάστε περισσότερα

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos Δομή Επανάληψης Κεφάλαιο 7 Mike Trimos Δομή Επανάληψης Η Διαδικασία αυτή ονομάζεται Βρόγχος ή Επανάληψη (Loop) και η εντολή ή το σύνολο των εντολών που επαναλαμβάνονται ονομάζεται Σώμα της Δομής. Η γλώσσα

Διαβάστε περισσότερα

Αρχές Γλωσσών Προγραμματισμου Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2015 Χρήστος Νομικός ( Τμήμα Μηχανικών Αρχές

Αρχές Γλωσσών Προγραμματισμου Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2015 Χρήστος Νομικός ( Τμήμα Μηχανικών Αρχές Αρχές Γλωσσών Προγραμματισμου Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2015 Χρήστος Νομικός ( Τμήμα Μηχανικών Αρχές Η/Υ και Γλωσσών Πληροφορικής Προγραμματισμου Πανεπιστήμιο

Διαβάστε περισσότερα

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ ii ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1. Εισαγωγή - Βασικές έννοιες....1 1.1 Εσωτερική παράσταση δεδομένων....2 1.1.1 Παράσταση θέσης....3 1.1.2 Μετατροπές μεταξύ συστημάτων διαφορετικών βάσεων....5 1.1.3 Οι αριθμητικές

Διαβάστε περισσότερα

ΕΠΑ.Λ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική Προγραµµατισµός Υπολογιστών Κεφάλαιο 9 Σηµειώσεις 03. Εντολή Εκχώρησης - Αντικατάστασης

ΕΠΑ.Λ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική Προγραµµατισµός Υπολογιστών Κεφάλαιο 9 Σηµειώσεις 03. Εντολή Εκχώρησης - Αντικατάστασης ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 9 : Βασικές Εντολές 1. Εισαγωγή Εντολή Εκχώρησης - Αντικατάστασης Μια µεταβλητή σε ένα πρόγραµµα Pascal µπορεί να πάρει τιµή µέσω µιας εντολής read (π.χ. read(x);)

Διαβάστε περισσότερα

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΟΔΗΓΙΕΣ: ΝΑ ΑΠΑΝΤΗΣΕΤΕ ΣΕ ΟΛΕΣ ΤΙΣ ΕΡΩΤΗΣΕΙΣ. Το εξεταστικό δοκίμιο αποτελείται από δύο Ενότητες Α και Β. ΕΝΟΤΗΤΑ Α - Αποτελείται από δέκα (10) ερωτήσεις. Κάθε ορθή απάντηση

Διαβάστε περισσότερα

Κεφάλαιο 10. Υποπρογράμματα

Κεφάλαιο 10. Υποπρογράμματα Κεφάλαιο 10 Υποπρογράμματα 10.1 Γενικός διδακτικός σκοπός Ο γενικός σκοπός του κεφαλαίου είναι να καταστούν ικανοί οι μαθητές να χρησιμοποιούν υποπρογράμματα για τη δημιουργία συνθέτων προγραμμάτων. 194

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

Διαβάστε περισσότερα

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE ΕΡΓΑΣΤΗΡΙΟ 7 Ο Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE Βασικές Έννοιες: Δομή Επανάληψης, Εντολές Επανάληψης (For, While do, Repeat until), Αλγόριθμος, Αθροιστής, Μετρητής, Παράσταση

Διαβάστε περισσότερα

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για

Διαβάστε περισσότερα

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ IΙ Λύβας Χρήστος chrislibas@ssl-unipi.gr Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ ΣΥΝΑΡΤΗΣΕΙΣ ΣΤΗ C (1/3) +- Στη C χρησιμοποιούμε συχνα τις συναρτήσεις (functions),

Διαβάστε περισσότερα

Δομές ελέγχου. ομαδοποίηση εντολών εκτέλεση εντολών υπό συνθήκη επανάληψη εντολών

Δομές ελέγχου. ομαδοποίηση εντολών εκτέλεση εντολών υπό συνθήκη επανάληψη εντολών Δομές ελέγχου Τροποποιούν τη σειρά εκτέλεσης των εντολών του προγράμματος Οι εντολές φυσιολογικά εκτελούνται κατά σειρά από την αρχή μέχρι το τέλος Με τις δομές ελέγχου επιτυγχάνεται: ομαδοποίηση εντολών

Διαβάστε περισσότερα

A2. Να γράψετε για κάθε περίπτωση τον αριθμό της πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

A2. Να γράψετε για κάθε περίπτωση τον αριθμό της πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή. ΜΑΘΗΜΑ / ΤΑΞΗ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ/Γ' ΕΠΑ.Λ. ΗΜΕΡΟΜΗΝΙΑ: 17-1-2016 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι.ΜΙΧΑΛΕΑΚΟΣ-Χ.ΠΑΠΠΑ-Α.ΚΑΤΡΑΚΗ ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας δίπλα

Διαβάστε περισσότερα

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

FORTRAN και Αντικειμενοστραφής Προγραμματισμός FORTRAN και Αντικειμενοστραφής Προγραμματισμός Παραδόσεις Μαθήματος 2016 Δρ Γ Παπαλάμπρου Επίκουρος Καθηγητής ΕΜΠ georgepapalambrou@lmentuagr Εργαστήριο Ναυτικής Μηχανολογίας (Κτίριο Λ) Σχολή Ναυπηγών

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΚΕΦΑΛΑΙΟ 10 Όπως είδαμε και σε προηγούμενο κεφάλαιο μια από τις βασικότερες τεχνικές στον Δομημένο Προγραμματισμό είναι ο Τμηματικός Προγραμματισμός. Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης

Διαβάστε περισσότερα

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ ΑΡΧΗ 1ης ΣΕΛΙ ΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 ΘΕΜΑ Α : Α1. Να

Διαβάστε περισσότερα

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Συναρτήσεις της C Τα Λοιπά Στοίβα και μηχανισμός κλήσης Αναδρομικές συναρτήσεις Στατικές μεταβλητές Άλλα θέματα Μηχανισμός

Διαβάστε περισσότερα

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ Λογικός τύπος ( ) Ο τύπος είναι κατάλληλoς για την αναπαράσταση ποσοτήτων που μπορούν να πάρουν δύο μόνο τιμές (π.χ. ναι/όχι, αληθές/ψευδές, ). Τιμές ή Δήλωση Εκχώρηση Ισοδυναμία με ακέραιους

Διαβάστε περισσότερα

Εισαγωγή στην Αριθμητική Ανάλυση

Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΕΞΕΤΑΣΕΙΣ ΓΙΑ ΤΑ ΑΝΩΤΕΡΑ ΚΑΙ ΑΝΩΤΑΤΑ ΕΚΠΑΙΔΕΥΤΙΚΑ ΙΔΡΥΜΑΤΑ 2005 ΠΛΗΡΟΦΟΡΙΚΗ ΛΥΣΕΙΣ 1 ΜΕΡΟΣ Α 1. Αρχή Διάβασε

Διαβάστε περισσότερα

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός Εργαστήριο 10 Πίνακες Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός 10.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Σ αυτή την άσκηση, εξετάζουμε μία βασική δομή του προγραμματισμού, το πίνακα. Στις μέχρι τώρα

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 4 η : Η Γλώσσα Προγραμματισμού VB.NET (3 ο Μέρος) Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Λογιστικής & Χρηματοοικονομικής

Διαβάστε περισσότερα

ιαφάνειες παρουσίασης #4

ιαφάνειες παρουσίασης #4 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης #4!Λοιπές εντολές!

Διαβάστε περισσότερα

Τι είναι κλάση Κλάση

Τι είναι κλάση Κλάση 35 Τι είναι κλάση Κλάση είναι μια συλλογή από μεταβλητές. Αλλιώς είναι ένα σύνολο από: δεδομένα που δηλώνουν τα χαρακτηριστικά της κλάσης (τι είναι) και συναρτήσεις που προδιαγράφουν την συμπεριφορά της

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Ορισμός

Διαβάστε περισσότερα

Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές»

Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» Η εργασία έχει ως στόχο τον σχεδιασμό και την υλοποίηση ενός μεταγλωττιστή για την γλώσσα Ciscal, χρησιμοποιώντας

Διαβάστε περισσότερα

Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables»

Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables» ενισχυτική διδασκαλία Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables» Χ. Σκουρλάς cskourlas@teiath.gr 2015-16 Επαναλήψεις - Loops, Διαδικασίες - procedures, Συναρτήσεις

Διαβάστε περισσότερα

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛHNIΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α A ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α Β ) ΣΑΒΒΑΤΟ 28 ΜΑΪΟΥ 2011 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΟΜΗΜΕΝΟΣ

Διαβάστε περισσότερα

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

Διαβάστε περισσότερα

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των

Διαβάστε περισσότερα

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ. ΤΡΙΤΗ ΔΙΑΛΕΞΗ Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.): Σύνταξη τύπος όνομαα; τύπος όνομαβ{όνομαα}; όνομαβ

Διαβάστε περισσότερα

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 3 Επανάληψη Γ μέρος

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 3 Επανάληψη Γ μέρος ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ Δομές Δεδομένων (Εργ.) Ακ. Έτος 2017-18 Διδάσκων: Ευάγγελος Σπύρου Εργαστήριο 3 Επανάληψη Γ μέρος 1. Στόχος του εργαστηρίου Στόχος του τρίτου εργαστηρίου είναι

Διαβάστε περισσότερα