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

Σχετικά έγγραφα
Αντικειμενοστραφής Προγραμματισμός

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

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

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

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

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

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

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

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

Δομές Δεδομένων Ενότητα 1

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 10 : Κατασκευή ΝΠΑ. Αλέξανδρος Τζάλλας

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

Πληροφορική II. Ενότητα 5 : Δομές Δεδομένων και αφηρημένοι. τύποι δεδομένων. Δρ. Γκόγκος Χρήστος

Λειτουργικά Συστήματα

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Προγραμματισμός Ι. Ενότητα 8 : Πίνακες IΙ. Αλέξανδρος Τζάλλας

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

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

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

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

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Φωνολογική Ανάπτυξη και Διαταραχές

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

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

Πληροφορική ΙΙ Θεματική Ενότητα 5

Αρχιτεκτονική υπολογιστών

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

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

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

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

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

Λειτουργικά Συστήματα

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Εισαγωγή στους Αλγορίθμους

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

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης

Προγραμματισμός και Εφαρμογές Υπολογιστών

Διοικητική των επιχειρήσεων

Εισαγωγή στους Αλγορίθμους

Ιστορία της μετάφρασης

Διδακτική της Πληροφορικής

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

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

Τεχνικές Προγραμματισμού και Χρήση Λογισμικού Η/Υ στις Κατασκευές

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού Υπέρθερμου Ατμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Νοσηλευτική Σεμινάρια

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 9 : Κανονικές Εκφράσεις. Αλέξανδρος Τζάλλας

Προγραμματισμός Η/Υ. Ενότητα 4: Εντολές Επιλογής

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Μάρκετινγκ Αγροτικών Προϊόντων

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Νοσηλευτική Σεμινάρια

Λειτουργικά Συστήματα

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Μικροοικονομική. Ενότητα 7 : Ισορροπία αγοράς Καραμάνης Κωνσταντίνος

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 8 : Αυτόματα NFA - DFA. Αλέξανδρος Τζάλλας

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Εκκλησιαστικό Δίκαιο

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 4 : Πράξεις με bits. Δρ. Γκόγκος Χρήστος

Εισαγωγή στους Αλγορίθμους

Οντοκεντρικός Προγραμματισμός

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 5: Κληρονομικότητα. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Μικροοικονομική. Ενότητα 6 : Ελαστικότητα προσφοράς Καραμάνης Κωνσταντίνος

Στατιστική. 6 ο Μάθημα: Διαστήματα Εμπιστοσύνης και Έλεγχοι Υποθέσεων. Γεώργιος Μενεξές Τμήμα Γεωπονίας ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Προγραμματισμός Ι Ενότητα 6 :

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Εκκλησιαστικό Δίκαιο

Φωνολογική Ανάπτυξη και Διαταραχές

Προγραμματισμός και Εφαρμογές Υπολογιστών

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

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Λοιμώδη Νοσήματα Υγιεινή Αγροτικών Ζώων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Αρχιτεκτονική υπολογιστών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 2 : Σύνολα & Σχέσεις (2/2) Αλέξανδρος Τζάλλας

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Transcript:

1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αντικειμενοστραφής Προγραμματισμός Ενότητα 2 : Ελεγχόμενη ροή προγράμματος Ιωάννης Τσούλος

2 Ανοιχτά Ακαδημαϊκά Τμήμα Μηχανικών Πληροφορικής Τ.Ε Αντικειμενοστραφής Προγραμματισμός Ενότητα 2 : Ελεγχόμενη ροή προγράμματος Ιωάννης Τσούλος Επίκουρος Καθηγητής Άρτα, 2015

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 3 3

4 Αντικειμενοστραφής Προγραμματισμός Ελεγχόμενη ροή προγράμματος, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Χρηματοδότηση Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο TEI Ηπείρου» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα.

Εισαγωγικά Σε κάθε πρόγραμμα είναι απαραίτητο να ελέγχουμε τη ροή του αναλόγως κάποιες συνθήκες και να την ανακατευθύνουμε κατάλληλα. Υπάρχουν πολλοί τρόποι να κατευθύνουμε τη ροή του προγράμματος και ο κάθε ένας εξυπηρετεί συγκεκριμένο σκοπό. 5 5

Η εντολή if Η εντολή if χρησιμοποιείται όταν θέλουμε να εκτελέσουμε κάποιες εντολές μόνο όταν ικανοποιείται κάποια συνθήκη: if { else { εντολές; εντολές; if (x == 1) { cout << x is one. << endl; else if (x == 2) { cout << x is two. << endl; else if (x == 3) { cout << x is three. << endl; else if (x == 4) { cout << x is four. << endl; else { cout << x is not between 1-4. << endl; 6 6

7 Η εντολή switch Η εντολή switch χρησιμοποιείται όταν έχουμε πολλαπλές επιλογές ή τιμές για μια μεταβλητή και θέλουμε να εκτελεστούν διαφορετικές εντολές για κάθε τιμή. switch (x) { case 1; cout << x is one. << endl; break; case 2; cout << x is two. << endl; break; case 3: cout << x is three. << endl; break; case 4: cout << x is four. << endl; break; default: cout << x is not between 1-4. << endl; break; 7

8 Η εντολή switch switch (x) { case 1; case 2; case 3; case 4; Χωρίς την break η εκτέλεση του προγράμματος θα συνεχίσει μέχρι την επόμενη break ή μέχρι το τέλος της εντολής switch. cout << x is between one and four. << endl; break; case 5; case 6; case 7; case 8; cout << x is between five and eight. << endl; break; default: cout << x is not between one and eight. << endl; break; 8

Η εντολή for Η εντολή for χρησιμοποιείται για επανάληψη (loop) υπό συνθήκη κάποιων εντολών. for (εντολή αρχικοποίησης; συνθήκη; εντολή επανάληψης) { εντολές; 9 9

Η εντολή for Η εντολή αρχικοποίησης (initialization) εκτελείται στην αρχή του loop και στη συνέχεια ελέγχεται αν είναι αληθής ή ψευδής η συνθήκη (condition). Αν είναι αληθής, εκτελούνται οι εντολές και στο τέλος εκτελείται η εντολή επανάληψης (iteration) και ελέγχεται και πάλι αν είναι αληθής η συνθήκη. Αν είναι αληθής εκτελούνται οι εντολές, κ.ο.κ. for (int i = 1; i < 20; i += 3) { cout << i << endl; 147 10 13 16 19 10 1

Η εντολή for Κάθε μία από τις εντολές αρχικοποίησης, επανάληψης και η συνθήκη μπορεί να παραλειφθεί αλλάζοντας τη συμπεριφορά της εντολής for. int x = 10; for (; x < 5; x++) { cout << x << endl; double y = 20000; // (y = pi) for (; y >= 10.0;) { // υπολογίζει την τετραγωνική του y και τοποθετεί // το αποτέλεσμα πάλι στο y. // Το for loop θα εκτελείται όσο το y είναι μεγαλύτερο από 10.0 cout << y); y = sqrt(y); for (;;) { // infinite loop wait_for_signal(); 11 1

Η εντολή while Η εντολή while χρησιμοποιείται αντί της for όταν δε μπορούμε να προβλέψουμε εύκολα πόσες φορές θέλουμε να εκτελεστούν οι εντολές, ή όταν δεν έχει σημασία ο αριθμός των επαναλήψεων αλλά η ικανοποίηση ή όχι της συνθήκης. while (συνθήκη) { εντολές; bool exit_from_loop = false; while (exit_from_loop == false) { // υποθετική ρουτίνα που διαβάζει δεδομένα από ένα αρχείο read_bytes(file1); // άλλη ρουτίνα που γράφει δεδομένα σε ένα άλλο αρχείο write_bytes(file2); if (file_empty(file1) == true) exit_from_loop = true; 12 1

Η εντολή do/while Η εντολή do/while είναι παρόμοια με την while, με μία διαφορά, οι εντολές εντός του loop θα εκτελεστούν τουλάχιστον μια φορά ανεξαρτήτως αν είναι αληθής η συνθήκη ή όχι. do { εντολές; while (συνθήκη); int x = 10; do { cout << x << endl; x++; while (x <10); Aποτέλεσμα: 10 13 1

Οι εντολές break/continue Πολλές φορές θέλουμε να διακόψουμε την εκτέλεση των εντολών σε ένα loop πρίν από τη προκαθορισμένη στιγμή. π.χ. να φύγουμε από ένα infinite loop, ή όταν το πρόγραμμα λάβει κάποιο σήμα (signal) για έξοδο (π.χ. Control-C). for (int i = 1; i < 20; i += 3) { if ( i*i > 100) break; cout << i << endl; Aποτέλεσμα: 1 4 7 10 14 1

Οι εντολές break/continue Η εντολή break χρησιμοποιείται σε όλα τα loops, for, while, do/while. Αντίστοιχη με την break είναι η continue, η οποία όμως διακόπτει την εκτέλεση μόνο του τρέχοντος iteration και όχι ολόκληρου του loop. Συνεχίζει από το επόμενο iteration. for (int i = 1; i < 20; i++) { // να μην τυπωθούν οι άρτιοι(ζυγοί) αριθμοί if ( i % 2 == 0) continue; cout << i << endl; Aποτέλεσμα: 1 7 13 19 15 1

Βιβλιογραφία 1. Εγχειρίδιο της C++, 2η Ελληνική έκδοση, Jesse Liberty, Γκιούρδας. 2. Μάθετε τη C++, 2η Ελληνική έκδοση, Jesse Liberty, Γκιούρδας. 3. Προγραμματισμός με τη γλώσσα C++ Μέρος Α, Αλεβίζος Θ., Έκδοση ΤΕΙ Καβάλας 4. C++ Αντικειμενοστραφής Προγραμματισμός Υπολογιστών Τομαράς Α.,, Εκδόσεις Νέων Τεχνολογιών. 5. Ανακαλύψτε τη γλώσσα C, J. Purdum, Εκδόσεις Δίαυλος. 6. Εισαγωγή στο Συστηματικό Προγραμματισμό και στη γλώσσα C++, Σ. Μπαλτζής, εκδόσεις πανεπιστημίου Ιωαννίνων. 7. C++ From the beginning, Jan Skansholm, Addison Wesley. 8. The design and analysis of computer algorithms, A.V. AHO, J.E. HOPCROFT, J.D. ULLMANN, Addison Wesley 1974. 9. Structure and Interpretation of Computer Programs, H. ABELSON, G.J. SUSSMAN, J. SUSSMAN, MIT Press, Mc Graw Hill Book Company, 1985 10. The art of computer programming, D.E. KNUTH, Addison-Wesley. 1

1 17 Αντικειμενοστραφής Προγραμματισμός Ελεγχόμενη ροή προγράμματος, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Σημείωμα Μαθήματα στο Αναφοράς ΤΕΙ Ηπείρου Copyright Τεχνολογικό Ίδρυμα Ηπείρου. Ιωάννης Τσούλος. Αντικειμενοστραφής Προγραμματισμός. Έκδοση: 1.0 Άρτα, 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: http://eclass.teiep.gr/courses/comp113/

Σημείωμα Μαθήματα Αδειοδότησης στο ΤΕΙ Ηπείρου Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 4.0 Διεθνές [1] ή μεταγενέστερη. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, Διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. [1] http://creativecommons.org/licenses/by-nc-nd/4.0/deed.el 1

1 Αντικειμενοστραφής Προγραμματισμός Ελεγχόμενη ροή προγράμματος, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Τέλος Ενότητας Επεξεργασία: Ευάγγελος Καρβούνης Άρτα, 2015

2 Τέλος Ενότητας Ελεγχόμενη ροή προγράμματος