Προγραμματισμός σε Octave/Matlab

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

Download "Προγραμματισμός σε Octave/Matlab"

Transcript

1 Προγραμματισμός σε Octave/Matlab Συμπληρωματικές σημειώσεις Αναστάσιος Κεσίδης, Αν. Καθηγητής

2 ΠΕΡΙΕΧΟΜΕΝΑ 1 Βασική χρήση του Octave Χρήση του Command Window ως αριθμομηχανή... 4 Τι είναι το Command Window;... 4 Πώς μπορεί να χρησιμοποιηθεί το Command Window ως αριθμομηχανή;... 4 Μπορούν να πραγματοποιηθούν και πιο σύνθετοι αριθμητικοί υπολογισμοί;... 4 Στο Command Window εμφανίζονται συνεχώς διάφορα δεδομένα. Πως μπορούμε να το καθαρίσουμε; Δήλωση και διαχείριση μεταβλητών στο Command Window... 5 Πως δηλώνουμε μεταβλητές στο Command Window;... 5 Πως μπορούμε να δούμε ποιες μεταβλητές υπάρχουν ανά πάσα στιγμή στην μνήμη του Octave;... 5 Πως μπορούμε να διαγράψουμε κάποια μεταβλητή από την μνήμη του Octave;... 5 Έχουν σημασία τα πεζά ή κεφαλαία στις ονομασίες των μεταβλητών; Δημιουργία προγραμμάτων στον Editor... 8 Πως γράφουμε ένα πρόγραμμα στο περιβάλλον του Octave;... 8 Πως εκτελούνται οι εντολές στον Editor;... 9 Γίνεται να εμφανίζεται μόνο το αποτέλεσμα στο Command Window και όχι όλες οι ενδιάμεσες εντολές; Εισαγωγή δεδομένων από τον χρήστη Στα παραπάνω παραδείγματα οι τιμές των μεταβλητών είναι καθορισμένες στο πρόγραμμα. Υπάρχει τρόπος ώστε να ζητούνται αυτές οι τιμές από τον χρήστη κάθε φορά που εκτελείται το πρόγραμμα; Μορφοποίηση της παρουσίασης των αποτελεσμάτων Εκτός από το να μην βάλουμε το ερωτηματικό στο τέλος της εντολής, ποιοι άλλοι τρόποι υπάρχουν για να εμφανίσουμε τα αποτελέσματα στο Command Window; Πως μπορούμε να εισάγουμε και να μορφοποιήσουμε κείμενο (strings) από τον χρήστη; Έλεγχος ροής προγράμματος Τελεστές σύγκρισης Πως μπορούμε να συγκρίνουμε αριθμητικές μεταβλητές ως προς την τιμή τους; Δομές ελέγχου της ροής του προγράμματος

3 Πως μπορούμε να ορίσουμε τμήματα κώδικα τα οποία θα εκτελούνται μόνο εάν ισχύει (ή όχι) μια λογική συνθήκη; Πως ακριβώς ελέγχονται οι συνθήκες σε μια δομή if-elseif-else-end που αποτελείται από πολλαπλά elseif; Δεν θα μπορούσαμε να γράψουμε το παραπάνω παράδειγμα με τέσσερα ξεχωριστά απλά if, ένα για κάθε περίπτωση; Τι άλλα πλεονεκτήματα έχει η χρήση της δομής if-elseif-else-end; Εμφωλευμένες δομές ελέγχου Μπορούν να χρησιμοποιηθούν δομές ελέγχου στο εσωτερικό άλλων δομών ελέγχου; Λογικές πράξεις Μπορούμε να κάνουμε πράξεις μεταξύ λογικών παραστάσεων; Βρόχοι επανάληψης Γενικά Ποια είναι η σκοπιμότητα χρήσης βρόχων επανάληψης; Βρόχος for end Σε ποιες περιπτώσεις χρησιμοποιείται ο βρόχος for end; Πώς δομείται ο βρόχος for end; Πώς μπορεί να χρησιμοποιηθεί ο μετρητής μέσα στον βρόχο; Βρόχος while end Σε ποιες περιπτώσεις χρησιμοποιείται ο βρόχος while end; Έχει ο βρόχος while end κάποιες ιδιαιτερότητες σχετικά με τον for end; Πώς μπορούμε να γράψουμε τον μετρητή του Παραδείγματος 3-1 χρησιμοποιώντας βρόχο while end; Εντολή break Τι είναι η εντολή break και πώς σχετίζεται με τους βρόχους επανάληψης; Παραδείγματα χρήσης των βρόχων επανάληψης Πώς χρησιμοποιούνται οι βρόχοι επανάληψης στην πράξη;

4 1 Βασική χρήση του Octave 1.1 Χρήση του Command Window ως αριθμομηχανή Τι είναι το Command Window; Είναι ο χώρος του Octave όπου μπορούν να πραγματοποιηθούν απευθείας υπολογισμοί ή να εκτελούνται κάποιες εντολές ή προγράμματα ή να εμφανίζονται τα αποτελέσματα από την εκτέλεση προγραμμάτων. Όταν το Command Window είναι σε κατάσταση αναμονής εμφανίζεται το σύμβολο >>. Στην περίπτωση αυτή μπορούμε να πραγματοποιήσουμε κάποιες πράξεις ή να τρέξουμε κάποιο πρόγραμμα. Πώς μπορεί να χρησιμοποιηθεί το Command Window ως αριθμομηχανή; Στο >> δίνουμε κατευθείαν την πράξη που μας ενδιαφέρει και έπειτα πατάμε το ENTER. Το αποτέλεσμα εμφανίζεται από κάτω. Παράδειγμα 1-1 Βασικές πράξεις στο Command Window Δώστε παραδείγματα εκτέλεσης των βασικών πράξεων πρόσθεσης, αφαίρεσης, πολλαπλασιασμού, διαίρεσης και εκθετικού στο Command Window Μπορούν να πραγματοποιηθούν και πιο σύνθετοι αριθμητικοί υπολογισμοί; Ναι, με σωστή χρήση των παρενθέσεων μπορεί να περιγραφεί οποιαδήποτε περίπλοκη αριθμητική έκφραση. 4

5 Παράδειγμα 1-2 Σύνθετοι αριθμητικοί υπολογισμοί Υπολογίστε την τιμή του κλάσματος 35 ( ) ( 3 5 ) Το αποτέλεσμα είναι Στο Command Window εμφανίζονται συνεχώς διάφορα δεδομένα. Πως μπορούμε να το καθαρίσουμε; Με την εντολή clc. 1.2 Δήλωση και διαχείριση μεταβλητών στο Command Window Πως δηλώνουμε μεταβλητές στο Command Window; Για να ορίσουμε την τιμή μιας μεταβλητής γράφουμε δίπλα από το >> το όνομά της και της αποδίδουμε τιμή μέσω της ισότητας. Εάν η μεταβλητή δεν έχει προηγουμένως οριστεί τότε δημιουργείται αυτόματα στην μνήμη του Octave και αμέσως μετά της αποδίδεται και η τιμή. Εάν η μεταβλητή υπάρχει ήδη, τότε η καινούργια τιμή που της δίνουμε αντικαθιστά την παλιά. Πως μπορούμε να δούμε ποιες μεταβλητές υπάρχουν ανά πάσα στιγμή στην μνήμη του Octave; Χρησιμοποιώντας την εντολή whos. Πως μπορούμε να διαγράψουμε κάποια μεταβλητή από την μνήμη του Octave; Με την εντολή clear ακολουθούμενη από την μεταβλητή που θέλουμε να σβήσουμε, π.χ. clear x. Εάν δώσουμε σκέτο clear τότε διαγράφονται όλες οι μεταβλητές από την μνήμη του Octave. Παράδειγμα 1-3 Εμφάνιση και διαγραφή μεταβλητών Για x = 5 και y = 7 υπολογίστε την παράσταση z = x 2 + y 5

6 Καθαρίστε το Command Window (εντολή clc) και έπειτα εμφανίστε τις μεταβλητές που υπάρχουν στην μνήμη. Η μεταβλητή ans δεν είναι ορισμένη από τον χρήστη αλλά είναι μια γενικής χρήσης μεταβλητή που χρησιμεύει για να εμφανίζονται αποτελέσματα πράξεων και υπολογισμών Υπολογίστε την τιμή k = z 1.5 6

7 Διαγράψτε τις μεταβλητές x και y και εμφανίστε έπειτα τις μεταβλητές που έχουν απομείνει. Διαγράψτε όλες τις μεταβλητές και ελέγξτε την μνήμη. Έχουν σημασία τα πεζά ή κεφαλαία στις ονομασίες των μεταβλητών; Ναι. Το Octave όπως και το Matlab είναι case-sensitive. Για παράδειγμα, το MeanValue και το meanvalue αντιπροσωπεύουν δύο διαφορετικές μεταβλητές στην μνήμη του Octave. Σε περίπτωση που ο χρήστης ζητήσει την τιμή μιας μεταβλητής που είναι γραμμένη με διαφορετικό τρόπο τότε εμφανίζεται μήνυμα λάθους στο Command Window. 7

8 Παράδειγμα 1-4 Χρήση πεζών/κεφαλαίων σε ονόματα μεταβλητών Για x 1 = 5, x 2 = 12 και x 3 = 15 υπολογίστε την μέση τιμή MeanValue = x 1+x 2 +x 3 3 Καθαρίστε το Command Window και ζητήστε να εμφανιστούν οι μεταβλητές MeanValue (που υπάρχει) και meanvalue (που δεν υπάρχει). Παρατηρήστε το μήνυμα λάθους που εμφανίζεται στην δεύτερη περίπτωση. 1.3 Δημιουργία προγραμμάτων στον Editor Πως γράφουμε ένα πρόγραμμα στο περιβάλλον του Octave; Στις προηγούμενες παραγράφους είδαμε το πώς μπορεί κανείς να χρησιμοποιήσει το Command Window για να κάνει κάποιες πράξεις ή να δηλώσει μεταβλητές και να κάνει κάποιους απλούς υπολογισμούς με αυτές τις μεταβλητές. Στην πραγματικότητα, όταν θέλουμε να γράψουμε ένα πρόγραμμα στο Octave που αποτελείται από ένα σύνολο εντολών χρησιμοποιούμε τον Editor. Το εργαλείο αυτό του Octave αποτελεί έναν εξελιγμένο κειμενογράφο (text editor) που είναι προσαρμοσμένος στις απαιτήσεις της γλώσσας προγραμματισμού του Octave. Έτσι, με την χρήση διάφορων χρωματισμών στο κείμενο ή αυτόματης μορφοποίησης οι εντολές του προγράμματος παρουσιάζονται με πιο εύληπτο τρόπο στον χρήστη του Octave. Οι ρυθμίσεις για την μορφοποίηση του Editor υπάρχουν στην καρτέλα Edit -> Preferences -> Editor styles. 8

9 Πως εκτελούνται οι εντολές στον Editor; Το πρόγραμμα εκτελείται πατώντας το F5 στο πληκτρολόγιο ή το εικονίδιο πάνω από τον Editor. Την πρώτη φορά που θα εκτελεστεί το πρόγραμμα θα ζητηθεί να αποθηκευτεί στον δίσκο. Τα αρχεία του Octave, όπως και τα αρχεία του Matlab έχουν κατάληξη.m. Όταν το πρόγραμμα αποθηκευτεί τότε εκτελείται και τα αποτελέσματα εμφανίζονται είτε στο Command Window ή/και σε κάποιο γράφημα ή το όλο πρόγραμμα τρέχει σε παραθυρική μορφή (GUI Graphical User Interface). Κάθε φορά που ξανατρέχει το πρόγραμμα, αυτό πρώτα αποθηκεύεται (στο αρχείο που ορίσαμε την πρώτη φορά) και έπειτα εκτελείται. Με αυτό τον τρόπο είναι εξασφαλισμένο ότι ανά πάσα στιγμή στον δίσκο είναι αποθηκευμένη η τελευταία μορφή του προγράμματος και δεν χρειάζεται ο χρήστης να πατά συνεχώς Αποθήκευση του αρχείου. Παράδειγμα 1-5 Βασική χρήση του Editor Γράψτε το Παράδειγμα σε μορφή προγράμματος στον Editor. 9

10 Παρατηρήστε ότι αρχικά δεν έχει καθοριστεί όνομα για το αρχείο. Πατήστε F5 στο πληκτρολόγιο ή το εικονίδιο ώστε να τρέξει το πρόγραμμα. Την πρώτη φορά θα ζητήσει να αποθηκεύσει το αρχείο. Προσέξτε τον τρέχοντα φάκελο (που είναι ο ίδιος που υπάρχει στο άνω μέρος στο κεντρικό παράθυρο του Octave). Δώστε όνομα αρχείου example_1_5 (η κατάληξη.m μπαίνει αυτόματα από το Octave). Τα ονόματα των αρχείων ΔΕΝ επιτρέπεται να έχουν κενό (space) χαρακτήρα. Αντί αυτού μπορεί να χρησιμοποιηθεί το _ ή το -. Μόλις τρέξει το πρόγραμμα, στο Command Window εμφανίζονται οι αντίστοιχες εντολές και το τελικό αποτέλεσμα. 10

11 Γίνεται να εμφανίζεται μόνο το αποτέλεσμα στο Command Window και όχι όλες οι ενδιάμεσες εντολές; Ναι. Για να εκτελείται μια εντολή αλλά να ΜΗΝ εμφανίζεται στο Command Window θα πρέπει να τελειώνει με ερωτηματικό ;. Στην περίπτωση αυτή αφήνουμε χωρίς ερωτηματικό μόνο τις εντολές που πραγματικά επιθυμούμε να εμφανίζονται στο Command Window, για παράδειγμα το τελικό αποτέλεσμα κάποιων υπολογισμών, κλπ. Παράδειγμα 1-6 Χρήση του τελικού ; στις εντολές Τροποποιήστε τον κώδικα στο Παράδειγμα 1-5 ώστε να καθαρίζει το Command Window και να αποκρύπτει τις εντολές που ορίζουν τις τρεις μεταβλητές. 11

12 Ο αστερίσκος στο όνομα του αρχείου example_1_5.m υποδηλώνει ότι έχουν γίνει αλλαγές στον κώδικα από την τελευταία φορά που αποθηκεύτηκε το αρχείο. Εάν τρέξουμε τώρα το πρόγραμμα με F5 τότε οι αλλαγές αυτές θα αποθηκευτούν στο αρχείο example_1_5.m. Έστω ότι θέλουμε να διατηρήσουμε το αρχείο αυτό ως έχει στο Παράδειγμα 1-5 και να αποθηκεύσουμε τις αλλαγές σε ένα καινούργιο αρχείο. Στην περίπτωση αυτή πατάμε στο εικονίδιο (Save File As) και ορίζουμε το καινούργιο όνομα του αρχείου example_1_6.m. Μόλις αποθηκευτεί το αρχείο example_1_6.m πατάμε F5 για να εκτελεστεί το πρόγραμμα. Το Command Window αδειάζει (λόγω της εντολής clc) και εμφανίζεται μόνο το αποτέλεσμα MeanValue (αφού μόνο η τελευταία γραμμή του κώδικα δεν είχε ερωτηματικό στο τέλος). Στα επόμενα παραδείγματα η ονομασία του.m αρχείου θα συμβαδίζει με την αρίθμηση του εκάστοτε Παραδείγματος. 12

13 1.4 Εισαγωγή δεδομένων από τον χρήστη Στα παραπάνω παραδείγματα οι τιμές των μεταβλητών είναι καθορισμένες στο πρόγραμμα. Υπάρχει τρόπος ώστε να ζητούνται αυτές οι τιμές από τον χρήστη κάθε φορά που εκτελείται το πρόγραμμα; Πράγματι, η λειτουργικότητα του προγράμματος όπως φαίνεται στο Παράδειγμα 1-6 είναι πολύ περιορισμένη καθώς εκτελείται μόνο για τις συγκεκριμένες τιμές για τις μεταβλητές εισόδου. Θα ήταν πολύ πιο εύχρηστο εάν μπορούσε ο χρήστης στην αρχή του προγράμματος να δίνει τιμές για τις μεταβλητές που χρησιμοποιούνται. Αυτό επιτυγχάνεται με την χρήση της εντολής input. Η εντολή αυτή δέχεται σαν όρισμα ένα κείμενο (string) που συνήθως είναι ένα προτρεπτικό μήνυμα προς τον χρήστη σχετικά με την τιμή που πρέπει να δώσει. Όταν εκτελείται η input εμφανίζεται στο Command Window το σχετικό κείμενο και το Octave αναμένει από τον χρήστη να δώσει μια τιμή η οποία και αποδίδεται στην μεταβλητή που σχετίζεται με την συγκεκριμένη input. Παράδειγμα 1-7 Εισαγωγή αριθμητικών δεδομένων από τον χρήστη με την εντολή input Τροποποιήστε τον κώδικα στο Παράδειγμα 1-6 έτσι ώστε οι τιμές για τις μεταβλητές x 1, x 2 και x 3 να δίνονται μέσω της εντολής input. Τρέξτε το πρόγραμμα. Για x 1 = 5, x 2 = 7 και x 3 = 4 δίνει μέση τιμή

14 Η χρήση ελληνικών χαρακτήρων στα μηνύματα κειμένου δεν υποστηρίζεται από το Octave, ειδικά στο Command Window. Π.χ. στα παραπάνω παραδείγματα, στον Εditor στις εντολές input τα ελληνικά μπορούν να χρησιμοποιηθούν κανονικά. Όμως κατά την εκτέλεση του προγράμματος στο Command Window τα ελληνικά δεν εμφανίζονται σωστά. Η λύση σε αυτές τις περιπτώσεις είναι να γράφεται το κείμενο στα λατινικά είτε σε greeklish είτε στα αγγλικά. Στο Matlab, εν γένει, δεν εμφανίζονται παρόμοια προβλήματα. 1.5 Μορφοποίηση της παρουσίασης των αποτελεσμάτων Εκτός από το να μην βάλουμε το ερωτηματικό στο τέλος της εντολής, ποιοι άλλοι τρόποι υπάρχουν για να εμφανίσουμε τα αποτελέσματα στο Command Window; Η εντολή disp μπορεί να χρησιμοποιηθεί για την εμφάνιση αποτελεσμάτων στο Command Window. Σαν παραμέτρους μπορεί να λάβει τόσο κείμενο όσο και αριθμητικές μεταβλητές. Εναλλακτικά μπορεί να χρησιμοποιηθεί η εντολή fprintf. Παράδειγμα 1-8 Εμφάνιση μορφοποιημένων αποτελεσμάτων με την εντολή disp Τροποποιήστε τον κώδικα στο προηγούμενο Παράδειγμα έτσι ώστε το αποτέλεσμα να εμφανίζεται σε ένα επεξηγηματικό κείμενο χρησιμοποιώντας την εντολή disp. 14

15 Η συνάρτηση num2str μετατρέπει μια αριθμητική μεταβλητή σε κείμενο. Στη συνέχεια, με την βοήθεια του άγκιστρου [ ] τα δύο κείμενα (το λεκτικό και το αποτέλεσμα της num2str) ενώνονται σε ένα ενιαίο κείμενο και εμφανίζονται με εντολή disp. Τρέξτε το πρόγραμμα. Παρατηρήστε ότι μπορούν να δοθούν τιμές για τις μεταβλητές x 1, x 2 και x 3 και σε κλασματική μορφή, π.χ. 1/3. Παρατηρήστε ότι η συνάρτηση num2str επιστρέφει τους δεκαδικούς αριθμούς με ακρίβεια 4 δεκαδικών ψηφίων. Παράδειγμα 1-9 Εμφάνιση μορφοποιημένων αποτελεσμάτων με την εντολή fprintf Τροποποιήστε τον κώδικα στο προηγούμενο Παράδειγμα έτσι ώστε το αποτέλεσμα να εμφανίζεται σε ένα επεξηγηματικό κείμενο χρησιμοποιώντας την εντολή fprintf. 15

16 Παρατηρήστε την σύνταξη της εντολής fprintf. Για κάθε αριθμητική μεταβλητή (που δίνεται στο τέλος της εντολής) υπάρχει μια υποδοχή στο κείμενο (που συμβολίζεται με το %g). Ο χαρακτήρας \n στο τέλος του μηνύματος χρησιμεύει για αλλαγή γραμμής στο Command Window. Εάν δεν υπάρχει το \n τότε το επόμενο κείμενο στο Command Window θα εμφανιστεί στα δεξιά του μηνύματος. Τρέξτε το πρόγραμμα. Παρατηρήστε ότι η χρήση του %g στην συνάρτηση fprintf εμφανίζει τους δεκαδικούς αριθμούς με διαφορετική ακρίβεια ανάλογα με τον αριθμό. Στο συγκεκριμένο παράδειγμα το αποτέλεσμα εμφανίζεται με ακρίβεια 5 δεκαδικών ψηφίων. Η εντολή fprintf μπορεί να χρησιμοποιηθεί για την παρουσίαση ακόμη πιο σύνθετων κειμένων με περισσότερες από μια αριθμητικές μεταβλητές. Για παράδειγμα, προσθέστε στον κώδικα μια ακόμη εντολή fprintf όπως εμφανίζεται παρακάτω στην γραμμή

17 Όταν μια γραμμή στον Editor ξεκινά από το σύμβολο % τότε το κείμενο που ακολουθεί αγνοείται από τον Editor του Octave και χρωματίζεται με ξεχωριστό χρώμα, συνήθως πράσινο. Αυτός είναι ο τρόπος για να εισάγονται σχόλια στον κώδικα είτε ολόκληρης γραμμής (όπως οι πρώτες γραμμές του παραπάνω παραδείγματος) είτε στο τέλος κάποιας εντολής (π.χ. γραμμή 14 στο παραπάνω παράδειγμα). Στα σχόλια που εισάγονται στον Editor μπορούν να χρησιμοποιηθούν ελληνικά. Εάν το κείμενο σε μια γραμμή στον Editor είναι πολύ επίμηκες μπορεί να "σπάσει" σε περισσότερες γραμμές χρησιμοποιώντας τις τρεις τελείες... και συνεχίζοντας στην επόμενη γραμμή (όπως φαίνεται, για παράδειγμα, τις γραμμές 10 και 11 στον παραπάνω κώδικα). Τρέξτε ξανά το πρόγραμμα του τελευταίου Παραδείγματος. Παρατηρήστε ότι την πολλαπλή χρήση του %g στην συνάρτηση fprintf. Συγκεκριμένα, χρησιμοποιούνται τέσσερα %g μέσα στο κείμενο (γραμμή 10) με σκοπό την εμφάνιση των τεσσάρων αριθμητικών μεταβλητών που δίνονται στο τέλος της fprintf (γραμμή 11). Η αντιστοίχιση γίνεται με την σειρά εμφάνισης. Παρατηρήστε επίσης, ότι όταν εκτελεστεί το πρόγραμμα οι αριθμοί στα %g παρουσιάζονται στο Command Window με διαφορετικό αριθμό δεκαδικών ψηφίων, ανάλογα με την περίπτωση. Π.χ. η μεταβλητή x 1 = 1/3 εμφανίζεται με 6 δεκαδικά ψηφία ενώ η x 2 = 5 εμφανίζεται ως ακέραιος. Πως μπορούμε να εισάγουμε και να μορφοποιήσουμε κείμενο (strings) από τον χρήστη; Η εντολή input δέχεται μια έξτρα παράμετρο 's'με την οποία δίνεται η δυνατότητα εισαγωγής αλφαριθμητικών (strings) από τον χρήστη. 17

18 Παράδειγμα 1-10 Εισαγωγή δεδομένων κειμένου από τον χρήστη με την εντολή input Γράψτε ένα πρόγραμμα που να ζητά το όνομα, το επίθετο και την ηλικία ενός ατόμου και έπειτα να εμφανίζει ένα σχετικό μορφοποιημένο κείμενο. Τρέξτε το πρόγραμμα και δώστε κάποιες τιμές: 18

19 Το Octave όπως και στο Matlab υποστηρίζουν διάφορους τύπους μεταβλητών. Ο βασικός τύπος αριθμητικών μεταβλητών είναι ο τύπος double. Οι μεταβλητές κειμένου είναι τύπου char. Για παράδειγμα, δίνοντας την εντολή whos στο Command Window μετά το προηγούμενο παράδειγμα, εμφανίζει: Παρατηρούμε ότι η μεταβλητή Hlikia είναι πραγματική μεταβλητή τύπου double, ενώ οι Onoma και Epitheto είναι μεταβλητές κειμένου τύπου char. Όπως φαίνεται στις δύο δεξιά στήλες ο τύπος δεδομένων double δεσμεύει 8 bytes στην μνήμη για κάθε μεταβλητή. Αντίθετα ο τύπος char είναι δυναμικός και το μήκος της μεταβλητής εξαρτάται από το πλήθος των χαρακτήρων του κειμένου που περιέχει. Έτσι η μεταβλητή Epitheto έχει μήκος 12 χαρακτήρες (Nikolopoulos) ενώ η μεταβλητή Onoma έχει μήκος 4 χαρακτήρες (Aris). 19

20 2 Έλεγχος ροής προγράμματος 2.1 Τελεστές σύγκρισης Πως μπορούμε να συγκρίνουμε αριθμητικές μεταβλητές ως προς την τιμή τους; Συχνά στα προγράμματα υπάρχει η ανάγκη να συγκριθεί η τιμή μιας αριθμητικής μεταβλητής με μια σταθερά ή οι τιμή δύο μεταβλητών μεταξύ τους. Για τον σκοπό αυτό χρησιμοποιούνται οι παρακάτω τελεστές σύγκρισης: Τελεστές σύγκρισης Πράξη Τελεστής Παράδειγμα Αποτέλεσμα Ισότητα == 5==3 0 (ψευδές) Ανισότητα ~= 5~=3 1 (αληθές) Μεγαλύτερο > 5>3 1 (αληθές) Μεγαλύτερο ή ίσο >= 5>=3 1 (αληθές) Μικρότερο < 5<3 0 (ψευδές) Μικρότερο ή ίσο <= 5<=3 0 (ψευδές) Το αποτέλεσμα ενός τελεστή σύγκρισης λαμβάνει τιμή είτε 1 (αληθές) είτε 0 (ψευδές). Παράδειγμα 2-1 Σύγκριση αριθμητικών δεδομένων με την χρήση τελεστών σύγκρισης Ορίστε τιμές για δύο πραγματικές μεταβλητές x και y και δοκιμάστε τους λογικούς τελεστές σε αυτές. 20

21 Τρέχοντας το πρόγραμμα δίνει τις αντίστοιχες έξι λογικές απαντήσεις: Τo αποτέλεσμα μιας λογικής πράξης μπορεί να αποθηκευτεί και σε μια λογική μεταβλητή για περαιτέρω χρήση. Π.χ., σε συνέχεια του προηγούμενου παραδείγματος, γράφοντας στο Command Window την εντολή >> a=(x>100) δίνει a=0 Με τον τρόπο αυτό η λογική μεταβλητή a περιέχει το λογικό αποτέλεσμα της σύγκρισης x>100, που είναι ψευδές. Δίνοντας whos στο Command Window επιστρέφει Παρατηρούμε ότι ενώ οι μεταβλητές x και y είναι πραγματικές μεταβλητές τύπου double, η λογική μεταβλητή a είναι τύπου logical. O τύπος δεδομένων logical δεσμεύει 1 byte στην μνήμη για κάθε μεταβλητή, σε αντίθεση με τον τύπο double που δεσμεύει 8 bytes για κάθε μεταβλητή. 21

22 2.2 Δομές ελέγχου της ροής του προγράμματος Πως μπορούμε να ορίσουμε τμήματα κώδικα τα οποία θα εκτελούνται μόνο εάν ισχύει (ή όχι) μια λογική συνθήκη; Για τον σκοπό αυτό χρησιμοποιούνται οι δομές ελέγχου της ροής του προγράμματος που βασίζονται στην εντολή if. Οι βασικές τρεις βασικές δομές ελέγχου είναι οι εξής: Δομή if-end Σε αυτή την μορφή καθορίζεται η συνθήκη καθώς και οι εντολές που θα εκτελεστούν μόνο ισχύει η συνθήκη. Η δομή έχει την μορφή: if <συνθήκη> end < > <εντολές που θα εκτελεστούν εάν η συνθήκη είναι αληθής> < > Παράδειγμα 2-2 Υπό συνθήκη εμφάνιση μηνύματος Γράψτε ένα πρόγραμμα το οποίο να ζητά από τον χρήστη έναν βαθμό (θεωρούμε ότι είναι μεταξύ 0-10). Έπειτα, να εμφανίζει ένα μήνυμα σχετικά με τη βαθμολογία. Ειδικά εάν ο βαθμός είναι 10 τότε να εμφανίζει και το μήνυμα "Συγχαρητήρια!" 22

23 Τρέχοντας το πρόγραμμα για x=8 και για x=10 δίνει αντίστοιχα: Δομή if-else-end Σε αυτή την μορφή καθορίζεται η συνθήκη και οι εντολές που θα εκτελεστούν εάν η συνθήκη αυτή ισχύει καθώς και οι εντολές που θα εκτελεστούν εάν δεν ισχύει η συνθήκη. Η δομή έχει την μορφή: if <συνθήκη> else end < > <εντολές που θα εκτελεστούν εάν η συνθήκη είναι αληθής> < > < > <εντολές που θα εκτελεστούν εάν η συνθήκη είναι ψευδής> < > 23

24 Παράδειγμα 2-3 Εμφάνιση διαφορετικών μηνυμάτων ανάλογα με το αποτέλεσμα της σύγκρισης Γράψτε ένα πρόγραμμα το οποίο να ζητά από τον χρήστη έναν βαθμό (θεωρούμε ότι είναι μεταξύ 0-10). Εάν ο βαθμός είναι μεγαλύτερο ή ίσος από 5 να εμφανίζει το μήνυμα "Πέρασες!" αλλιώς να εμφανίζει το μήνυμα "Κόπηκες ". Τρέχοντας το πρόγραμμα για x=7 και για x=3 δίνει αντίστοιχα: Δομή if-elseif-else-end Σε αυτή την μορφή καθορίζεται η συνθήκη και οι εντολές που θα εκτελεστούν εάν η συνθήκη αυτή ισχύει. Σε περίπτωση που δεν ισχύει η συνθήκη καθορίζονται επιπλέον μια ή περισσότερες συνθήκες καθώς και οι εντολές που θα εκτελεστούν σε περίπτωση που αυτές ισχύουν. Τέλος καθορίζονται οι εντολές που θα εκτελούνται εάν καμμία από τις προηγούμενες συνθήκες δεν ισχύει. Η δομή είναι: 24

25 if <συνθήκη 1> < > <εντολές 1> < > elseif <συνθήκη 2> < > <εντολές 2> < > elseif <συνθήκη 3> < > <εντολές 3> < > < > (πιθανόν και άλλα elseif) else end < > <εντολές που θα εκτελεστούν εάν δεν ισχύει καμία από τις προηγούμενες συνθήκες> < > Μια δομή if-elseif-else-end μπορεί να έχει ένα ή περισσότερα elseif. Επίσης, μπορεί να έχει ένα μόνο Else στο τέλος αλλά αυτό δεν είναι υποχρεωτικό. Η χρήση εσοχών σε όλες τις δομές if είναι ιδιαίτερα χρήσιμη και συνίσταται ανεπιφύλακτα. Βοηθά οπτικά στην καλύτερη κατανόηση του κώδικα καθώς και στον εντοπισμό πιθανών λαθών, όπως για παράδειγμα, ένα if χωρίς το αντίστοιχο end στο τέλος κλπ. 25

26 Παράδειγμα 2-4 Εμφάνιση διαφορετικών μηνυμάτων ανάλογα με πολλαπλά κριτήρια σύγκρισης Γράψτε ένα πρόγραμμα το οποίο θα ζητά από τον χρήστη έναν αριθμό. Έπειτα, να εμφανίζει ένα σχετικό μήνυμα ανάλογα με το εάν ο αριθμός είναι θετικός, αρνητικός ή μηδέν. Τρέχοντας το πρόγραμμα για x=17, x=-2 και x=0 δίνει, αντίστοιχα: Πως ακριβώς ελέγχονται οι συνθήκες σε μια δομή if-elseif-else-end που αποτελείται από πολλαπλά elseif; Οι συνθήκες ελέγχονται με την σειρά όπως είναι διατυπωμένες στην δομή if-elseif-else-end. Σε κάθε συνθήκη θεωρείται γνωστό ότι όλες οι προηγούμενες συνθήκες δεν ισχύουν, αφού εάν ίσχυε κάποια από τα 26

27 προηγούμενα if ή elseif τότε η ροή του προγράμματος θα είχε εκτελέσει τις αντίστοιχες εντολές και θα είχε βγει από την δομή. Παράδειγμα 2-5 Χρήση της δομής if-elseif-else-end με πολλαπλά elseif Γράψτε ένα πρόγραμμα το οποίο να εμφανίζει τις τέσσερις εποχές και να ζητά από τον χρήστη να επιλέξει τον αριθμό κάποιας εποχής. Έπειτα, να εμφανίζει την αντίστοιχη εποχή ανάλογα με τον αριθμό που επέλεξε ο χρήστης. Σε περίπτωση που επιλέξει λάθος αριθμό να εμφανίζεται σχετικό μήνυμα. 27

28 Στον παραπάνω κώδικα περιλαμβάνονται σχόλια που περιγράφουν το τι συμβαίνει καθώς εξετάζονται διαδοχικά οι διάφορες συνθήκες if και elseif. Τρέχοντας το πρόγραμμα, π.χ. για x=2 δίνει: Δεν θα μπορούσαμε να γράψουμε το παραπάνω παράδειγμα με τέσσερα ξεχωριστά απλά if, ένα για κάθε περίπτωση; Ναι. Όμως οι δομές if-elseif-else-end προσφέρουν δύο πλεονεκτήματα: - ότι σε κάθε έλεγχο κάποιας συνθήκης γνωρίζουμε ότι οι προηγούμενες συνθήκες δεν ισχύουν. - ο κώδικας είναι πιο λιτός Έτσι, στο προηγούμενο παράδειγμα, εκτός από τα 4 ξεχωριστά if που θα χρειαζόμασταν (δηλαδή, ένα για κάθε εποχή) θα έπρεπε να γραφεί και ένα πέμπτο if που να αφορά την περίπτωση που ο αριθμός δεν είναι κάποιο από τα 1, 2, 3 ή 4 (δηλαδή την περίπτωση που καλύπτει το else στο παραπάνω παράδειγμα). Τι άλλα πλεονεκτήματα έχει η χρήση της δομής if-elseif-else-end; Η δομή είναι ιδιαίτερα χρήσιμη στην περίπτωση όπου δίνονται κάποια διαστήματα τιμών και θέλουμε να ελέγξουμε σε ποιο διάστημα εμπίπτει ο αριθμός που δίνει ο χρήστης. Στην περίπτωση αυτή εκμεταλλευόμαστε το γεγονός ότι σε κάθε έλεγχο συνθήκης elseif γνωρίζουμε ότι οι προηγούμενες συνθήκες είναι ψευδείς. Με αυτό τον τρόπο μπορούμε να καθορίσουμε διαδοχικά όρια των διαστημάτων όπως φαίνεται στο παρακάτω παράδειγμα. 28

29 Παράδειγμα 2-6 Έλεγχος εάν κάποιος αριθμός ανήκει σε κάποιο διάστημα τιμών. Γράψτε ένα πρόγραμμα το οποίο να ζητά από τον χρήστη τον αριθμό ενός μήνα και έπειτα, να εμφανίζει την αντίστοιχη εποχή. Θεωρούμε ότι ο αριθμός που δίνει ο χρήστης είναι μεταξύ 1 και 12. Αποθηκεύστε το πρόγραμμα ως example_2_06.m Τρέχοντας το πρόγραμμα, π.χ. για x=7 (Ιούλιος) δίνει: 29

30 Παράδειγμα 2-7 Έλεγχος εάν κάποιος αριθμός ανήκει σε κάποιο διάστημα τιμών (έλεγχος με αντίστροφη σειρά) Γράψτε ένα πρόγραμμα το οποίο να ζητά από τον χρήστη μια θερμοκρασία. Έπειτα να εμφανίζει ένα μήνυμα ανάλογα με τα παρακάτω διαστήματα τιμών: Διάστημα τιμών Μήνυμα x 40 Καύσωνας 25 x < 40 Ζέστη 15 x < 25 Καλός καιρός 0 x < 15 Κρύο x < 0 Παγετός Τρέχοντας το πρόγραμμα, π.χ. για x=32 και -6 δίνει, αντίστοιχα: 30

31 2.3 Εμφωλευμένες δομές ελέγχου Μπορούν να χρησιμοποιηθούν δομές ελέγχου στο εσωτερικό άλλων δομών ελέγχου; Ναι. Οι δομές αυτές ονομάζονται εμφωλευμένες (nested) και παρέχουν την δυνατότητα να ορίζονται σύνθετες δομές αναφορικά με την ροή του προγράμματος. Για παράδειγμα, μια δομή if-end εμφωλευμένη σε μια άλλη μπορεί να χρησιμοποιηθεί ώστε να οριστεί κώδικας που θα εκτελείται όταν ισχύουν ταυτόχρονα δύο λογικές συνθήκες (λογική πράξη γινομένου, βλέπε και παράγραφο 2.4). Παράδειγμα 2-8 Έλεγχος εάν ισχύουν δύο συνθήκες ταυτόχρονα Γράψτε ένα πρόγραμμα το οποίο να ζητά από τον χρήστη την βαθμολογία της θεωρίας και του εργαστηρίου ενός μαθήματος. Έπειτα να εμφανίζει ένα μήνυμα μόνο εάν ο βαθμός είναι πάνω από 5 και στα δύο. Τρέχοντας το πρόγραμμα, π.χ. για θεωρία 7 και εργαστήριο 9 εμφανίζει το μήνυμα ενώ για θεωρία 6 και εργαστήριο 2 δεν εμφανίζει τίποτα. 31

32 Παράδειγμα 2-9 Εξέταση όλων των περιπτώσεων ανάμεσα σε δύο λογικές συνθήκες Τροποποιείστε τον κώδικα στο προηγούμενο Παράδειγμα έτσι ώστε να καλύπτει και τις τέσσερις διαφορετικές περιπτώσεις που μπορεί να τύχουν σε σχέση με τις δύο βαθμολογίες. Τρέχοντας το πρόγραμμα για τέσσερις διαφορετικές περιπτώσεις δίνει: 32

33 2.4 Λογικές πράξεις Μπορούμε να κάνουμε πράξεις μεταξύ λογικών παραστάσεων; Ναι. Μπορούμε να συνδυάσουμε δύο ή περισσότερες λογικές παραστάσεις έτσι ώστε να παράγουμε ένα καινούργιο λογικό συμπέρασμα. Οι τρεις βασικές λογικές πράξεις είναι το λογικό γινόμενο (AND), το λογικό άθροισμα (OR) και η λογική άρνηση (NOT). Λογικό γινόμενο - πράξη AND Το λογικό γινόμενο είναι 1 (αληθές) όταν όλα τα ορίσματά του είναι 1 (αληθή). Ο πίνακας αληθείας της πράξης AND είναι: AND - Λογικό γινόμενο Σύμβολο && Όρισμα A 0 (ψευδές) 0 (ψευδές) 1 (αληθές) 1 (αληθές) Όρισμα B 0 (ψευδές) 1 (αληθές) 0 (ψευδές) 1 (αληθές) A && B Παράδειγμα Ερμηνεία 0 (ψευδές) 0 (ψευδές) 0 (ψευδές) 1 (αληθές) >> (5>9) && (- 3>10) ans = 0 >> (5>9) && (- 3<10) ans = 0 >> (5<9) && (- 3>10) ans = 0 >> (5<9) && (- 3<10) ans = 1 Είναι το 5 μεγαλύτερο από το 9 και το -3 μεγαλύτερο από 10; Όχι Είναι το 5 μεγαλύτερο από το 9 και το -3 μικρότερο από 10; Όχι Είναι το 5 μικρότερο από το 9 και το -3 μεγαλύτερο από 10; Όχι Είναι το 5 μικρότερο από το 9 και το -3 μικρότερο από 10; Ναι Λογικό άθροισμα - πράξη OR Το λογικό άθροισμα είναι 1 (αληθές) όταν τουλάχιστον ένα από τα ορίσματά του είναι 1 (αληθές). Ο πίνακας αληθείας της πράξης OR είναι: 33

34 OR - Λογικό άθροισμα Σύμβολο Όρισμα A 0 (ψευδές) 0 (ψευδές) 1 (αληθές) 1 (αληθές) Όρισμα B 0 (ψευδές) 1 (αληθές) 0 (ψευδές) 1 (αληθές) A B Παράδειγμα Ερμηνεία 0 (ψευδές) 1 (αληθές) 1 (αληθές) 1 (αληθές) >> (5>9) (- 3>10) ans = 0 >> (5>9) (- 3<10) ans = 1 >> (5<9) (- 3>10) ans = 1 >> (5<9) (- 3<10) ans = 1 Είναι το 5 μεγαλύτερο από το 9 ή το -3 μεγαλύτερο από 10; Όχι Είναι το 5 μεγαλύτερο από το 9 ή το -3 μικρότερο από 10; Ναι Είναι το 5 μικρότερο από το 9 ή το -3 μεγαλύτερο από 10; Ναι Είναι το 5 μικρότερο από το 9 ή το -3 μικρότερο από 10; Ναι Λογική άρνηση - πράξη NOT Η λογική άρνηση είναι 1 (αληθής) όταν το όρισμα είναι 0 (ψευδές) και αντιστρόφως. Ο πίνακας αληθείας της πράξης NOT είναι: NOT Λογική άρνηση Σύμβολο ~ Όρισμα A ~A Παράδειγμα Ερμηνεία 0 1 >> ~(5>9) Δεν είναι το 5 μεγαλύτερο από το 9 ; (ψευδές) (αληθές) ans = 1 Ναι 1 0 >> ~(5<9) Δεν είναι το 5 μικρότερο από το 9 ; (αληθές) (ψευδές) ans = 0 Όχι 34

35 Παράδειγμα 2-10 Χρήση του λογικού γινομένου AND Τροποποιείστε τον κώδικα στο Παράδειγμα 2-9 χρησιμοποιώντας λογικό γινόμενο όπου χρειάζεται. Τρέχοντας το πρόγραμμα για τέσσερις διαφορετικές περιπτώσεις δίνει: 35

36 Παράδειγμα 2-11 Χρήση του λογικού γινομένου AND και σε εμφωλευμένο IF Τροποποιείστε τον κώδικα στο προηγούμενο Παράδειγμα έτσι ώστε να εμφανίζει ένα μήνυμα "Συγχαρητήρια!" εάν και οι δύο βαθμοί είναι 10. Στο πρόγραμμα έχει προστεθεί το if στις γραμμές όπου εξετάζεται εάν και οι δύο βαθμολογίες είναι 10 και εμφανίζει το επιπλέον μήνυμα. Τρέχοντας το πρόγραμμα για δύο διαφορετικές περιπτώσεις δίνει: 36

37 Παράδειγμα 2-12 Χρήση του λογικού αθροίσματος OR Τροποποιείστε τον κώδικα στο Παράδειγμα 2-11 έτσι ώστε να ελέγχει εάν οι αριθμοί που έχει δώσει ο χρήστης είναι μεταξύ 0 και 10. Αν δεν συμβαίνει αυτό να εμφανίζει σχετικό μήνυμα και να τερματίζει το πρόγραμμα. 37

38 Στο πρόγραμμα έχουν προστεθεί οι γραμμές 8 έως 15 όπου γίνεται ο έλεγχος με δύο λογικά OR (σύμβολο στις γραμμές 8 και 12, αντίστοιχα) για τις τιμές της θεωρίας και του εργαστηρίου, αντίστοιχα. Τρέχοντας το πρόγραμμα για λάθος δεδομένα δίνει: Η εντολή return τερματίζει άμεσα την εκτέλεση του προγράμματος. 38

39 3 Βρόχοι επανάληψης 3.1 Γενικά Ποια είναι η σκοπιμότητα χρήσης βρόχων επανάληψης; Υπάρχουν περιπτώσεις όπου θέλουμε πραγματοποιηθούν κάποιοι υπολογισμοί για όλες τις τιμές ενός συνόλου δεδομένων ή όσο ισχύει κάποια συνθήκη. Σε αυτή την περίπτωση μπορεί να χρησιμοποιηθεί ένας βρόχος επανάληψης που θα εκτελείται είτε ένα προκαθορισμένο πλήθος φορών (βρόχοι τύπου for end) ή όσο ισχύει κάποια συνθήκη (βρόχοι τύπου while end). 3.2 Βρόχος for end Σε ποιες περιπτώσεις χρησιμοποιείται ο βρόχος for end; Ο βρόχος for end χρησιμοποιείται όταν το πλήθος των επαναλήψεων είναι γνωστό εξ αρχής. Για παράδειγμα, εάν υπάρχουν N αριθμοί για τους οποίους θέλουμε να υπολογίσουμε π.χ. το άθροισμα ή την μέση τιμή ή την μικρότερη τιμή, τότε μπορεί να χρησιμοποιηθεί ένας βρόχος for end. Οι εντολές που περιέχονται μέσα σε έναν βρόχο for end ή while end σκόπιμο είναι να έχουν εσοχή, δηλαδή να είναι γραμμές ένα tab πιο μέσα. Αυτό γίνεται ακόμη πιο αναγκαίο όταν υπάρχουν εμφωλευμένοι βρόχοι επανάληψης ο ένας μέσα στον άλλο. Πώς δομείται ο βρόχος for end; Ο βρόχος περιλαμβάνει έναν μετρητή δίπλα από την εντολή for συνοδευόμενο από την αρχική και την τελική τιμή του και πιθανόν το βήμα αύξησης. Ο βρόχος ολοκληρώνεται με την εντολή end. Όλες οι εντολές που βρίσκονται μεταξύ του for και του end επαναλαμβάνονται όσες φορές καθορίζεται από την αρχική, την τελική τιμή και το βήμα του μετρητή. Για παράδειγμα, ο παρακάτω βρόχος έχει ως μετρητή την μεταβλητή i που παίρνει τιμές από 1 έως 10 και εμφανίζει τα τετράγωνα των αντίστοιχων αριθμών. Να σημειωθεί ότι ο μετρητής είναι συνήθως το i αλλά αυτό δεν είναι υποχρεωτικό. Οποιοδήποτε όνομα μεταβλητής μπορεί να χρησιμοποιηθεί ως μετρητής, όπως i, j, itter, κ.α. 39

40 Παράδειγμα 3-1 Βασική μορφή βρόχου for end Γράψτε ένα πρόγραμμα που θα εμφανίζει τα τετράγωνα των αριθμών από 1 έως 10. Στο προηγούμενο παράδειγμα υπονοείται ότι το βήμα αύξησης του μετρητή είναι 1. Μπορούμε όμως να ορίσουμε και διαφορετικό βήμα προσθέτοντάς το ενδιάμεσα από την αρχική και τελική τιμή του μετρητή. Στο παρακάτω παράδειγμα, ο μετρητής i παίρνει τιμές 1, 3, 5, 7, 9 και συνεπώς εμφανίζονται τα τετράγωνα μόνο αυτών των αριθμών: Παράδειγμα 3-2 Βήμα μετρητή σε βρόχο for end Γράψτε ένα πρόγραμμα που θα εμφανίζει τα τετράγωνα μόνο των περιττών των αριθμών από 1 έως 10. Το βήμα μπορεί να χρησιμοποιηθεί και για να έχουμε φθίνουσα αρίθμηση του μετρητή. Στο παρακάτω παράδειγμα ο μετρητής i παίρνει τιμές από 10 έως 1: 40

41 Παράδειγμα 3-3 Φθίνουσα αρίθμηση μετρητή σε βρόχο for end Γράψτε ένα πρόγραμμα που θα εμφανίζει τα τετράγωνα των αριθμών από 10 έως 1. Πώς μπορεί να χρησιμοποιηθεί ο μετρητής μέσα στον βρόχο; Συνήθως ο μετρητής i χρησιμεύει σε συνδυασμό με πίνακες ή διανύσματα για τον προσδιορισμό του i-οστού του στοιχείου. Σε άλλες περιπτώσεις, εντός του βρόχου χρησιμοποιείται μια συνάρτηση ως προς το i, όπως π.χ. η ύψωση σε δύναμη στα προηγούμενα τρία παραδείγματα. Είναι σημαντικό να τονιστεί ότι η συνάρτηση αυτή μπορεί να έχει οποιαδήποτε μορφή. Για παράδειγμα, μπορεί ο μετρητής i να αυξάνεται αλλά να εμφανίζονται αριθμοί οι αριθμοί σε φθίνουσα σειρά, όπως στο παρακάτω παράδειγμα όπου ενώ ο μετρητή λαμβάνει τιμές από 1 έως 5 στο Command Window εμφανίζονται οι τιμές με ανάστροφη σειρά. 41

42 Παράδειγμα 3-4 χρήση του μετρητή εντός του βρόχου for end Γράψτε ένα πρόγραμμα στο οποίο ενώ ο μετρητής θα αυξάνει από 1 έως 5 στην οθόνη θα εμφανίζει τους αριθμούς από 5 έως 1. Η συνάρτηση μπορεί να έχει και πιο σύνθετη μορφή όπως φαίνεται στο επόμενο παράδειγμα όπου χωρίς να πειράξουμε την γραμμή 4 εμφανίζουμε τις τιμές 22, 20, 18, 16, 14. Παράδειγμα 3-5 Συνάρτηση με βάση τον μετρητή εντός του βρόχου for end Τροποποιήστε τον κώδικα στο Παράδειγμα 3-4 έτσι ώστε να εμφανίζονται οι αριθμοί 22, 20, 18, 16, 14 χωρίς να αλλάξετε την γραμμή Βρόχος while end Σε ποιες περιπτώσεις χρησιμοποιείται ο βρόχος while end; Ο βρόχος while end χρησιμοποιείται όταν το πλήθος των επαναλήψεων δεν είναι γνωστό εξ αρχής ή δεν μας ενδιαφέρει. Αντίθετα, αυτό που καθορίζει το πόσες επαναλήψεις θα γίνουν είναι το εάν ισχύει κάποια λογική 42

43 συνθήκη που αναγράφεται στα δεξιά του while. Όσο η συνθήκη αυτή είναι αληθής οι επαναλήψεις επαναλαμβάνονται. Μόλις η συνθήκη πάψει να ισχύει η ροή του προγράμματος συνεχίζει κάτω από το end του βρόχου με τις επόμενες εντολές που πιθανόν υπάρχουν. Έχει ο βρόχος while end κάποιες ιδιαιτερότητες σχετικά με τον for end; Εφόσον ο βρόχος while end εκτελείται όσο ισχύει η συνθήκη θα πρέπει να υπάρχει η δυνατότητα σε κάποια από τις επαναλήψεις η συνθήκη να γίνει ψευδής ώστε να σταματήσει ο βρόχος και η ροή του προγράμματος να συνεχιστεί με τις επόμενες εντολές. Σε αντίθετη περίπτωση θα έχουμε έναν ατέρμονο βρόχο που θα έχει σαν αποτέλεσμα το πρόγραμμα να κολλήσει. Πώς μπορούμε να γράψουμε τον μετρητή του Παραδείγματος 3-1 χρησιμοποιώντας βρόχο while end; Ενώ ο βρόχος for end φροντίζει μόνος του να αυξάνει τον μετρητή κατά το επιθυμητό βήμα, στην περίπτωση του βρόχου while end αυτό είναι ευθύνη του προγραμματιστή και δίνονται με διαφορετικό τρόπο. Θα πρέπει να φροντίσουμε να δώσουμε ξεχωριστή εντολή για την αρχική τιμή του μετρητή, να ορίσουμε την συνθήκη τερματισμού με βάση τον μετρητή και να δώσουμε ξεχωριστή εντολή για την αύξηση του μετρητή, όπως φαίνεται στο παρακάτω Παράδειγμα. Παράδειγμα 3-6 Βασική μορφή βρόχου while end Γράψτε ένα πρόγραμμα που θα εμφανίζει τα τετράγωνα των αριθμών από 1 έως 10. Είναι σημαντικό να τονιστεί ότι έχει σημασία το πού βάζουμε την εντολή αύξησης του μετρητή. Για παράδειγμα, εάν στο προηγούμενο παράδειγμα εναλλάξουμε τις εντολές στις γραμμές 6 και 7, δηλαδή πρώτα να αυξάνει τον μετρητή και έπειτα να εμφανίζει το τετράγωνό του τότε το αποτέλεσμα που λαμβάνουμε είναι διαφορετικό. 43

44 Παράδειγμα 3-7 Σημασία της σειράς εντολών στον βρόχο while end Τροποποιείστε τον κώδικα στο προηγούμενο Παράδειγμα εναλλάσσοντας τις γραμμές 6 και 7. Παρατηρούμε ότι, καθώς πρώτα αυξάνεται ο μετρητής και μετά χρησιμοποιείται για την εμφάνιση του τετραγώνου του, αυτό έχει ως αποτέλεσμα να εμφανίζονται τα τετράγωνα των αριθμών από 2 έως 11. Στα παραπάνω δύο παραδείγματα εάν έλειπε η εντολή i=i+1 που αυξάνει τον μετρητή τότε θα είχαμε έναν ατέρμονο βρόχο και το πρόγραμμα θα "κολλούσε". Πράγματι, στην περίπτωση αυτή, το i διατηρεί συνέχεια την αρχική τιμή 1 (που του δώσαμε στην γραμμή 4) η οποία όμως δεν μεταβάλλεται πουθενά παρακάτω, με αποτέλεσμα η συνθήκη i<=10 να ισχύει συνεχώς, χωρίς να υπάρχει κάποια προοπτική να γίνει ψευδής και έτσι η ροή του προγράμματος κυκλοφορεί συνεχώς μέσα στον βρόχο while end χωρίς να μπορεί το πρόγραμμα να συνεχίσει παρακάτω. Ένα "κολλήσει" το πρόγραμμα σε έναν ατέρμονο βρόχο τότε κάνουμε κλικ στο Command Window και πατάμε επανειλημμένα CTRL+C (όπως το Copy) ώστε να τερματιστεί άμεσα η εκτέλεση του προγράμματος. Είναι προφανές, ότι στους βρόχους while end το βήμα καθορίζεται στην εντολή αύξησης του μετρητή. Για παράδειγμα, εάν θέλουμε να αυξάνεται ο μετρητής κατά 2 τότε η εντολή πρέπει να γίνει i=i+2. Η ίδια εντολή μπορεί να χρησιμοποιηθεί και για να έχουμε φθίνουσα αρίθμηση του μετρητή. Στο παρακάτω παράδειγμα ο μετρητής i παίρνει τιμές από 5 έως 1 και εμφανίζει τα αντίστοιχα τετράγωνα. Προσέξτε ότι η αρχική τιμή του i είναι 5, ότι η ανισότητα έχει αλλάξει φορά και ότι ο μετρητής μειώνεται κατά 1. 44

45 Παράδειγμα 3-8 Φθίνουσα αρίθμηση μετρητή σε βρόχο while end Γράψτε ένα πρόγραμμα που θα εμφανίζει τα τετράγωνα των αριθμών από 5 έως Εντολή break Τι είναι η εντολή break και πώς σχετίζεται με τους βρόχους επανάληψης; Υπάρχουν περιπτώσεις όπου θέλουμε να έχουμε εσκεμμένη έξοδο από ένα βρόχο επανάληψης πριν ολοκληρωθούν όλες οι επαναλήψεις του (σε βρόχους for end) ή γίνει η συνθήκη ψευδής (σε βρόχους while end). Σε αυτή την περίπτωση χρησιμοποιείται η εντολή break συνήθως σε συνδυασμό με κάποιο if το οποίο καθορίζει και το πότε θα γίνει η εσκεμμένη έξοδος. Ένα παράδειγμα χρήσης της εντολής break σε βρόχους for end είναι για όταν το πρόγραμμα ζητά από τον χρήστη μια συγκεκριμένη τιμή (π.χ. κωδικό εισόδου) για να καθορισμένο πλήθος επαναλήψεων (π.χ. τρεις προσπάθειες). 45

46 Παράδειγμα 3-9 Χρήση της εντολής break σε βρόχο for end Γράψτε ένα πρόγραμμα το οποίο θα ζητά από τον χρήστη έναν κωδικό εισόδου. Θα επιτρέπει τρεις προσπάθειες και εάν δεν είναι επιτυχείς τότε το πρόγραμμα θα τερματίζεται αλλιώς θα συνεχίζει παρακάτω. Η λογική του προγράμματος είναι η εξής: Ο βρόχος for end πρόκειται να εκτελεστεί 3 φορές. Κάθε φορά ζητάει έναν κωδικό. Εάν ο κωδικός είναι ο σωστός, τότε η "σημαία" ΟΚ παίρνει την τιμή 1 και με την εντολή break βγαίνει εσκεμμένα από τον βρόχο (πριν ολοκληρωθούν όλες οι επαναλήψεις). Στην γραμμή 17, αφού έχει τελειώσει ο βρόχος (είτε εσκεμμένα με σωστό κωδικό, είτε αφού περάσουν τρεις αποτυχημένες προσπάθειες) το if ελέγχει εάν η "σημαία" OK έχει την τιμή 1. Εάν ναι, τότε σημαίνει ότι ο κωδικός δόθηκε σωστά (κάποια από τις τρεις φορές). Αλλιώς, το OK είναι 0 που σημαίνει ότι και οι τρεις προσπάθειες ήταν αποτυχημένες. Εάν λοιπόν στην γραμμή 17 το ΟΚ==0 σημαίνει ότι πρέπει να τερματιστεί το πρόγραμμα καθώς η ταυτοποίηση απέτυχε. Αλλιώς, δηλαδή εάν το ΟΚ είναι ΜΗ μηδενικό, τότε ο χρήστης έχει ταυτοποιηθεί και το πρόγραμμα θα συνεχίσει κανονικά στις γραμμές 21 και κάτω. Τρέχοντας το πρόγραμμα, για δύο διαφορετικές περιπτώσεις δίνει: 46

47 Τρεις αποτυχημένες προσπάθειες 47 Σωστός κωδικός Η εντολή break μπορεί να χρησιμοποιηθεί και σε βρόχους while end σε περιπτώσεις όπου το πρόγραμμα ζητά από τον χρήστη να διαλέξει μέσα από ένα σύνολο επιτρεπτών επιλογών. Εάν ο χρήστης δεν επιλέξει κάποια από τις διαθέσιμες επιλογές τότε πρόγραμμα ξαναρωτά τον χρήστη, αλλιώς συνεχίζει παρακάτω. Σε αυτή την περίπτωση η συνθήκη για το while ορίζεται 1 δηλαδή να είναι πάντοτε αληθής. Αυτό μοιάζει να αντιβαίνει στην λογική του βρόχου while end όμως το σκεπτικό είναι: κάνε συνεχώς επαναλήψεις στον βρόχο και βγες μέσω της break όταν ικανοποιηθεί κάποιο if μέσα στον βρόχο. Παράδειγμα 3-10 Χρήση της εντολής break σε βρόχο while end Γράψτε ένα πρόγραμμα το οποίο θα εμφανίζει στον χρήστη ένα μενού όπου θα πρέπει να επιλέξει μια από τις τέσσερις αριθμητικές πράξεις. Σε περίπτωση που ο χρήστης δώσει λάθος επιλογή το πρόγραμμα θα τον ξαναρωτά, αλλιώς θα συνεχίζει παρακάτω. 1 clc; 2 clear; 3 4 disp('menu'); % εμφάνισε ένα μενού για τις 4 πράξεις και για έξοδο 5 disp('----'); 6 disp('1. Prosuesh'); 7 disp('2. Afairesh'); 8 disp('3. Pollaplasiasmos'); 9 disp('4. Diairesh'); 10 disp('0. Telos programmatos'); 11 disp(' '); 12 while 1 % ζήτα συνεχώς από τον χρήστη μια επιλογή 13 fprintf('dwse epilogh (0-4): '); 14 x=input(''); 15 if x==1 x==2 x==3 x==4 x==0 % εάν είναι μια από τις επιτρεπτές break; % τότε βγες από τον βρόχο 17 else 18 disp('lauos ariumos'); % αλλιώς εμφάνισε σχετικό μήνυμα end 20 end % και συνέχισε να ζητάς από τον χρήστη μια επιλογή if x==0 % ο χρήστης επέλεξε 0 οπότε 23 disp('telos programmatos'); 24 return; % τερματίζεται το πρόγραμμα 25 elseif x==1 26 disp('h epilogh einai prosuesh');

48 27 % εντολές για την πρόσθεση 28 % elseif x==2 30 disp('h epilogh einai afairesh'); 31 % εντολές για την αφαίρεση 32 % elseif x==3 34 disp('h epilogh einai pollaplasiasmos'); 35 % εντολές για τον πολλαπλασιασμό 36 % elseif x==4 38 disp('h epilogh einai diairesh'); 39 % εντολές για την διαίρεση 40 % end Τρέχοντας το πρόγραμμα, για δύο διαφορετικές περιπτώσεις δίνει: Επιλογή 3 Λανθασμένες επιλογές και έξοδος? Στην γραμμή 15 του κώδικα γιατί να μην γράψουμε απλά if x>=0 && x<=4 ;! Διότι σε αυτή την περίπτωση το if θα είναι αληθές και για απαντήσεις που δεν είναι σωστές όπως π.χ. εάν ο χρήστης έδινε 3.5 ή Συνεπώς πρέπει στο if να δηλώσουμε επακριβώς ποιες είναι οι αποδεκτές επιλογές. 3.5 Παραδείγματα χρήσης των βρόχων επανάληψης Πώς χρησιμοποιούνται οι βρόχοι επανάληψης στην πράξη; Τα επόμενα παραδείγματα παρουσιάζουν ορισμένες τυπικές εφαρμογές όπου χρησιμοποιούνται βρόχοι επανάληψης τόσο με την μορφή for end όσο και με την while end. Δύο διαδικασίες που είναι συνήθεις σε διάφορα προγράμματα είναι ο υπολογισμός του αθροίσματος ενός συνόλου τιμών καθώς και της μέσης τιμής τους. 48

49 Παράδειγμα 3-11 Εύρεση αθροίσματος και μέσου όρου σε ένα σύνολο τιμών Γράψτε ένα πρόγραμμα που να ζητά από τον χρήστη ένα συγκεκριμένο πλήθος αριθμών και έπειτα να εμφανίζει το άθροισμα και την μέση τιμή τους. Τρέχοντας το πρόγραμμα για πέντε αριθμούς δίνει: Μια ακόμη συνηθισμένη διαδικασία είναι ο υπολογισμός του μέγιστου (ή αντίστοιχα, του ελάχιστου) από ένα σύνολο τιμών. Συχνά, εκτός από το μέγιστο (ή το ελάχιστο) μας ενδιαφέρει να βρούμε σε ποια θέση (μέσα στο σύνολο των τιμών) βρέθηκε. Επιπλέον, όταν εισάγονται τιμές στο πρόγραμμα οι οποίες πρέπει να βρίσκονται εντός κάποιων ορίων τότε πρέπει να ενσωματώσουμε τους κατάλληλους ελέγχους ώστε να ελέγχεται η ορθότητα της τιμής εισόδου. 49

50 Παράδειγμα 3-12 Εύρεση αθροίσματος και μέσου όρου σε ένα σύνολο τιμών Γράψτε ένα πρόγραμμα που να ζητά από τον χρήστη ένα συγκεκριμένο πλήθος N βαθμολογιών. Έπειτα να εισάγει τις βαθμολογίες ελέγχοντας κάθε φορά ώστε η βαθμός να είναι μεταξύ 0 και 10. Έπειτα, να εμφανίζει μήνυμα με τον μεγαλύτερο βαθμό και σε ποια θέση βρέθηκε. 50

51 Τρέχοντας το πρόγραμμα για πέντε αριθμούς δίνει: 51

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

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

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1 Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων Octave - Διαδικασία ανάπτυξης προγραμμάτων MATLAB - Απλά

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

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Εργαστήριο 4: 4.1 Η Δομή Ελέγχου if Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Γενική Μορφή: Παρατηρήσεις:

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python 1η Ομάδα Ασκήσεων Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων IDLE - Διαδικασία ανάπτυξης προγραμμάτων Python - Εισαγωγικά προγράμματα / print / μεταβλητές / input

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 4ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΟΙ ΤΕΛΕΣΤΕΣ ΣΥΓΚΡΙΣΗΣ Με τους τελεστές σύγκρισης, συγκρίνουμε τις

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

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

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

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

Προγραμματιστικό Περιβάλλον

Προγραμματιστικό Περιβάλλον Προγραμματιστικό Περιβάλλον Προγραμματίζοντας τις βασικές αριθμητικές πράξεις 2 ο Γυμνάσιο Παλλήνης Καθηγήτρια: Ευφροσύνη Σκιαδά Πρόσθεση Αφαίρεση Πολλαπλασιασμός Σύμβολα αριθμητικών πράξεων Διαίρεση Τι

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

Τυπικές χρήσεις της Matlab

Τυπικές χρήσεις της Matlab Matlab Μάθημα 1 Τι είναι η Matlab Ολοκληρωμένο Περιβάλλον Περιβάλλον ανάπτυξης Διερμηνευμένη γλώσσα Υψηλή επίδοση Ευρύτητα εφαρμογών Ευκολία διατύπωσης Cross platform (Wintel, Unix, Mac) Τυπικές χρήσεις

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

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

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

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

Συστήματα Αναμονής (Queuing Systems)

Συστήματα Αναμονής (Queuing Systems) ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ - ΕΜΠ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧ. ΥΠΟΛΟΓΙΣΤΩΝ Τομέας Επικοινωνιών, Ηλεκτρονικής & Συστημάτων Πληροφορικής Εργαστήριο Διαχείρισης & Βέλτιστου Σχεδιασμού Δικτύων Τηλεματικής

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

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

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη Επιλογή και επανάληψη Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως, ότι στο

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

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος

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

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΗΠΕΙΡΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. Εργαστήριο Επεξεργασία Εικόνας & Βίντεο 1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή Νικόλαος Γιαννακέας Άρτα 2018 1 Εισαγωγή Το Matlab

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

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

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

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

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

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

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

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

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

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

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

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

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

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής Διάλεξη 1 Πράξεις Τελεστές Έλεγχος Ροής Διοργάνωση : ΚΕΛ ΣΑΤΜ Διαφάνειες: Skaros, MadAGu Παρουσίαση: MadAGu Άδεια: Creative Commons 3.0 Αριθμητικοί Τελεστές- Αριθμητικές Πράξεις 2 Internal use only Αριθμητικοί

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

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

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

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό Τμήμα, Πανεπιστήμιο

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

Ένας πρώτος τρόπος εύρεσης των διαστάσεων ενός πίνακα στο. Matlab είναι με την εντολή size(όνομα πίνακα) και πατώντας. enter ( )

Ένας πρώτος τρόπος εύρεσης των διαστάσεων ενός πίνακα στο. Matlab είναι με την εντολή size(όνομα πίνακα) και πατώντας. enter ( ) Ένας πρώτος τρόπος εύρεσης των διαστάσεων ενός πίνακα στο Matlab είναι με την εντολή size(όνομα πίνακα) και πατώντας enter ( ) Απόδοση των διαστάσεων του προηγούμενου πίνακα σε άλλον πίνακα, τον Χ. Κάποια

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

Διάγραμμα Ροής. Σελίδα 1 από 10

Διάγραμμα Ροής. Σελίδα 1 από 10 Θεωρία επισκόπηση 3 Επανάληψη Σημείωση: Οι εντολές που συγκροτούν μια εντολή επανάληψης αποκαλούνται βρόχος 1. Εντολή Όσο.επανάλαβε Σύνταξη Όσο συνθήκη επανάλαβε εντολές Πώς Λειτουργεί. Αρχικά ελέγχεται

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

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

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

Πληροφορική. Ενότητα 1: Α. Οργάνωση μαθήματος. Β. Στοιχεία Προγραμματισμού -Προγραμματιστικές Δομές, Πρόγραμμα, Γλώσσες.

Πληροφορική. Ενότητα 1: Α. Οργάνωση μαθήματος. Β. Στοιχεία Προγραμματισμού -Προγραμματιστικές Δομές, Πρόγραμμα, Γλώσσες. ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Πληροφορική Ενότητα 1: Α. Οργάνωση μαθήματος. Β. Στοιχεία Προγραμματισμού -Προγραμματιστικές Δομές, Πρόγραμμα, Γλώσσες. Κωνσταντίνος Καρατζάς

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ, Εισαγωγή στο MATLAB Κολοβού Αθανασία, ΕΔΙΠ, akolovou@di.uoa.gr Εγκατάσταση του Matlab Διανέμεται ελεύθερα στα μέλη του ΕΚΠΑ το λογισμικό MATLAB με 75 ταυτόχρονες (concurrent) άδειες χρήσης. Μπορείτε να

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

ΠΕΡΙΕΧΟΜΕΝΑ. Εντολές επιλογής Εντολές επανάληψης

ΠΕΡΙΕΧΟΜΕΝΑ. Εντολές επιλογής Εντολές επανάληψης ΠΕΡΙΕΧΟΜΕΝΑ Εντολές επιλογής Εντολές επανάληψης Εισαγωγή Στο προηγούμενο κεφάλαιο αναπτύξαμε προγράμματα, τα οποία ήταν πολύ απλά και οι εντολές των οποίων εκτελούνται η μία μετά την άλλη. Αυτή η σειριακή

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

4. Επιλογή και Επανάληψη

4. Επιλογή και Επανάληψη Σελίδα 53 4. Επιλογή και Επανάληψη 4.1 Η Εντολή Επιλογής if.. then Η εντολή If.. Then.. χρησιμοποιείται για την λήψη λογικών αποφάσεων σε ένα πρόγραμμα. Η εντολή αυτή έχει διάφορες μορφές σύνταξης οι οποίες

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

Εντολές της LOGO (MicroWorlds Pro)

Εντολές της LOGO (MicroWorlds Pro) Εντολές της LOGO (MicroWorlds Pro) Εντολές εμφάνισης (εξόδου) και αριθμητικές πράξεις δείξε Εμφανίζει στην οθόνη έναν αριθμό, το αποτέλεσμα πράξεων, μια λέξη ή μια λίστα (ομάδα) λέξεων. δείξε 200 200 δείξε

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

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

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

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

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

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

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

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

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

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

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

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

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

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

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

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1) Πότε χρησιμοποιείται η δομή επανάληψης

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

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Φεβρουάριος/Μάρτιος 2013 v. 0.1 Master-mind: κανόνες παιχνιδιού Στο master mind χρειάζεται να παράγονται κάθε φορά 4 τυχαία σύμβολα από ένα πλήθος 6 διαφορετικών

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Python scripts Ένα πρόγραμμα στην Python (συχνά αποκαλείται script) αποτελείται από μία ακολουθία ορισμών και εντολών. H ακολουθία των ορισμών και

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

επιµέλεια Θοδωρής Πιερράτος

επιµέλεια Θοδωρής Πιερράτος Βασικές έννοιες προγραµµατισµού Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως,

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

Προγραµµατισµός στην Basic

Προγραµµατισµός στην Basic Προγραµµατισµός στην Basic 1. εντολή εισόδου Χρησιµοποιείται η εντολή INPUT, η οποία µπορεί να συνταχθεί : α. INPUT X, αν το δεδοµένο που ζητάει είναι αριθµητικό ή β. INPUT X$, αν το δεδοµένο που ζητάει

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

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

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

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

Εισαγωγή στη γλώσσα προγραμματισμού C++

Εισαγωγή στη γλώσσα προγραμματισμού C++ Εισαγωγή στη γλώσσα προγραμματισμού C++ Περιβάλλον Εργασίας 2 Περιβάλλον Εργασίας 1. Χρήση απλού κειμενογράφου και Μεταγλωττιστή 2. Ολοκληρωμένα Περιβάλλοντα Εργασίας (Integrated Development Environments)

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

Εισαγωγή στους Υπολογιστές

Εισαγωγή στους Υπολογιστές Εισαγωγή στους Υπολογιστές Ενότητα #5: Διαγράμματα ροής (Flow Charts), Δομές επανάληψης Καθ. Δημήτρης Ματαράς Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών Διαγράμματα ροής (Flow Charts), Δομές επανάληψης

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

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει

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

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

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

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

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ 6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ 6.1 Η Έννοια του Πίνακα Συχνά είναι προτιμότερο να αντιμετωπίζουμε ένα σύνολο μεταβλητών σαν ενότητα για να απλοποιούμε το χειρισμό τους. Έτσι οργανώνουμε σύνθετα δεδομένα σε

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

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Δομή Επανάληψης Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Δομή Επανάληψης Επανάληψη με αρίθμηση DO = ,

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

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

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

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

Εισαγωγή στη γλώσσα προγραμματισμού C++

Εισαγωγή στη γλώσσα προγραμματισμού C++ Εισαγωγή στη γλώσσα προγραμματισμού C++ Επαναληπτική Δομή 2 1. Εισαγωγή Δομές επανάληψης ή βρόχοι (loops) ονομάζονται τμήματα του κώδικα που εκτελούνται περισσότερες από μία φορές, ανάλογα με τη συνθήκη

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

true (1) αν και οι δύο είσοδοι είναι true (1) true (1) αν τουλάχιστον μια είσοδος είναι true (1)

true (1) αν και οι δύο είσοδοι είναι true (1) true (1) αν τουλάχιστον μια είσοδος είναι true (1) Λογικές και συγκριτικές πράξεις. Εντολή διακλάδωσης if Σε αυτήν την ενότητα θα εξοικειωθείτε με: τις λογικές μεταβλητές τις συγκριτικές πράξεις, τις λογικές πράξεις και τους τελεστές τους. την εντολή διακλάδωσης

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

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Ιωάννης Γ. Τσούλος Εργασία Πρώτη - Αριθμομηχανή Με την χρήση του περιβάλλοντος AWT ή του SWING θα πρέπει να δημιουργηθεί αριθμομηχανή για την εκτέλεση

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

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

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου

Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Εργαστήριο 2: Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραμματισμού

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

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro Για να μπορέσουμε να εισάγουμε δεδομένα από το πληκτρολόγιο αλλά και για να εξάγουμε εμφανίσουμε αποτελέσματα στην οθόνη του υπολογιστή χρησιμοποιούμε τις εντολές Εισόδου και Εξόδου αντίστοιχα. Σύνταξη

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

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Σκοπός της 1ης άσκησης είναι η εξοικείωση με τη γλώσσα προγραμματισμού Python, την οποία και θα χρησιμοποιήσουμε και στις υπόλοιπες εργαστηριακές ασκήσεις.

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

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 4: Δομές Ελέγχου Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6) ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΠΑΡΑΣΚΕΥΗ 22 ΣΕΠΤΕΜΒΡΙΟΥ 2017 ΘΕΜΑ Α ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1 Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων IDLE - Διαδικασία ανάπτυξης προγραμμάτων Python - Απλά προγράμματα

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

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΠΑΝΕΛΛΑ ΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ KAI ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΠΕΜΠΤΗ 26 ΣΕΠΤΕΜΒΡΙΟΥ 2019 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙ ΩΝ: ΕΠΤΑ (7)

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Μεταβλητές-Σταθερές-Παράμετροι Τα στοιχεία

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

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με: Αλγόριθμοι 2.2.1. Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά εντολών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Τα κυριότερα χρησιμοποιούμενα

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

Εισαγωγή στην πληροφορική

Εισαγωγή στην πληροφορική Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Η γλώσσα προγραμματισμού

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

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή Στόχοι και αντικείμενο ενότητας Η έννοια του Τελεστή #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Εκφράσεις Προτεραιότητα Προσεταιριστικότητα Χρήση παρενθέσεων Μετατροπές Τύπων Υπονοούμενες και ρητές μετατροπές

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

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

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

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι εντολές επανάληψης (while, do-while, for) Γενικά για τις εντολές επανάληψης Συχνά στο προγραμματισμό είναι επιθυμητή η πολλαπλή εκτέλεση μιας ενότητας εντολών, είτε για ένα

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

Γνωρίστε το Excel 2007

Γνωρίστε το Excel 2007 Εισαγωγή τύπων Γνωρίστε το Excel 2007 Πληκτρολογήστε το σύμβολο της ισότητας (=), χρησιμοποιήστε ένα μαθηματικό τελεστή (+,-,*,/) και πατήστε το πλήκτρο ENTER. Πρόσθεση, διαίρεση, πολλαπλασιασμός και αφαίρεση

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

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων Πληροφορικής 2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών 3. Ο αλγόριθμος

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα της γλώσσας C, το Dev-C++, το οποίο είναι εφαρμογή που τρέχει

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Β Μέρος Δομή Ελέγχου if-elif-else Επαναληπτική Δομή Ελέγχου while Επαναληπτική Δομή Ελέγχου for Αλληλεπίδραση χρήστη-προγράμματος Συναρτήσεις Η δομή

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

Να γράψετε τους αριθμούς 1, 2, 3 από τη Στήλη Α και δίπλα το γράμμα α, β, γ, δ, ε από τη Στήλη Β που δίνει τη σωστή αντιστοιχία.

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

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

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης Προγραμματισμός Υπολογιστών & Κ.Π. Γιαλούρης Στόχοι του σημερινού μαθήματος Εξοικείωση με τα περιβάλλοντα της Python Κατανόηση βασικών εννοιών & τεχνικών Τύπος δεδομένων Μεταβλητή Εντολή ανάθεση τιμής

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Μεταβλητές Μεταβλητή ονομάζεται ένα μέγεθος

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

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

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

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

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

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

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

του προγράμματος diagrama_rohs.zip )

του προγράμματος diagrama_rohs.zip ) έκδοση 3.20 ( κατέβασμα του προγράμματος diagrama_rohs.zip ) Το πρόγραμμα αυτό γράφτηκε όχι να γίνει μια γλώσσα προγραμματισμού, αλλά να γίνει ένα εργαλείο για την εισαγωγή των μαθητών στον προγραμματισμό.

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

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου Σκοπός και περίγραμμα της Ενότητας 4 Σκοπός της παρουσίασης Να μελετήσουμε τις συναρτήσεις που ελέγχουν την ροή και την εκτέλεση ενός προγράμματος Σύνοψη

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 3ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΕΚΤΥΠΩΣΗ ΚΕΙΜΕΝΟΥ Ένα κείμενο μπορεί να εκχωρηθεί ως τιμή μιας μεταβλητής

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

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος Θέμα 1 Δίνονται τα παρακάτω τμήματα αλγορίθμου Α. βαλίτσα Αληθής εισιτήριο Αληθής ταξίδι βαλίτσα και εισιτήριο Τι τιμή θα έχει η λογική μεταβλητή

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εντολές ελέγχου ροής προγράμματος (if-else & switch) Η εντολή if-else Η εντολή if-else υπάρχει σχεδόν σε όλες τις γλώσσες προγραμματισμού. Χρησιμοποιείται για τον έλεγχο της

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

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

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

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

a. Επιλέγουμε τις γραμμές προς διαγραφή a. Επιλέγουμε τις στήλες προς διαγραφή a. Γράφουμε σε μια στήλη μια σειρά από αριθμούς ή αλφαριθμητικά

a. Επιλέγουμε τις γραμμές προς διαγραφή a. Επιλέγουμε τις στήλες προς διαγραφή a. Γράφουμε σε μια στήλη μια σειρά από αριθμούς ή αλφαριθμητικά Τρίτο μάθημα Excel 1. Προσθήκη γραμμών a. Δίνουμε δεξί κλικ πάνω στην γραμμή όπου μας ενδιαφέρει να εισάγουμε νέα γραμμή b. Πατάμε εισαγωγή c. Μια νέα γραμμή εισάγεται 2. Προσθήκη στηλών a. Δίνουμε δεξί

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

Πρόβλημα 29 / σελίδα 28

Πρόβλημα 29 / σελίδα 28 Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους

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

Άσκηση 1. Ποια από τα κάτω αλφαριθμητικά είναι αποδεκτά ως ονόματα μεταβλητών σε έναν αλγόριθμο i. Τιμή

Άσκηση 1. Ποια από τα κάτω αλφαριθμητικά είναι αποδεκτά ως ονόματα μεταβλητών σε έναν αλγόριθμο i. Τιμή Θεωρία επισκόπηση 1 Η μεταβλητή είναι ένα συμβολικό όνομα κάτω από το οποίο βρίσκεται μια τιμή, η οποία μπορεί να μεταβάλλεται κατά την εκτέλεση του αλγορίθμου 1. Τύποι Δεδομένων (Μεταβλητών και Σταθερών)

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

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε Ναι Τέλος Α2 Διδακτική πρόταση ΕΝΟΤΗΤΑ 2η, Θέματα Θεωρητικής Επιστήμης των Υπολογιστών Κεφάλαιο 2.2. Παράγραφος 2.2.7.4 Εντολές Όσο επανάλαβε και Μέχρις_ότου Η διαπραγμάτευση των εντολών επανάληψης είναι σημαντικό

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

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

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

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