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

Σχετικά έγγραφα
Εισαγωγή στην πληροφορική

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

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

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

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

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης

Ασκή σεις στή δομή επανα λήψής

Υπολογισμός - Εντολές Επανάληψης

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

Επαναληπτικές Διαδικασίες

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

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

Διδακτικά προβλήματα σχετικά με την έννοια της επανάληψης

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

9. Εντολές επανάληψηςκαι η εντολή

ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ. Γ Λυκείου Κατεύθυνσης Mike Trimos

Προγραμματιστικές Τεχνικές

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

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

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

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

Μαθησιακές δυσκολίες ΙΙ. Παλαιγεωργίου Γιώργος Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών Τηλεπικοινωνιών και Δικτύων, Πανεπιστήμιο Θεσσαλίας

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

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

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

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές:

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ

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

Κεφάλαια Εντολές επανάληψης. Τρεις εντολές επανάληψης. Επιλογή εντολής επανάληψης ΟΣΟ...ΕΠΑΝΑΛΑΒΕ. Σύνταξη στη ΓΛΩΣΣΑ

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

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

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

Εντολές Επανάληψης. int sum = 0, i=1; sum += i++ ; sum += i++ ; Η πράξη αυτή θα πρέπει να επαναληφθεί Ν φορές!

Θέματα Προγραμματισμού Η/Υ

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β

Προγραµµατιστικές Τεχνικές

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

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

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

Δομές ελέγχου ροής προγράμματος

Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης

Δομές Επανάληψης. Εισαγωγή στη C++

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ

Γεώργιος Δ. Παλτεζανάκης

Δομές Επανάληψης. Όσο μέχρις ότου για. 22/11/08 Ανάπτυξη εφαρμογών 1

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

ΘΕΜΑΤΑ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΗΜΕΡΟΜΗΝΙΑ: 1/12/2013

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

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

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

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

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

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

Υπολογισμός - Εντολές Ελέγχου

Β ΛΥΚΕΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ

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

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

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

Μεθόδων Επίλυσης Προβλημάτων

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

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

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

Κεφάλαιο 5ο: Εντολές Επανάληψης

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

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

Πληροφορική 2. Αλγόριθμοι

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

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

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

Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα

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

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια

Προγραμματιστικές Τεχνικές

Θέμα Α Α3.1 ΤΕΛΟΣ 1ΗΣ ΑΠΟ 9 ΣΕΛΙΔΕΣ

Η Δομή Επανάληψης. Εισαγωγή στην δομή επανάληψης Χρονική διάρκεια: 3 διδακτικές ώρες

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

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. i. Η συνθήκη α > β ή α <= β α) είναι πάντα Αληθής β) είναι πάντα Ψευδής γ) δεν υπολογίζεται δ) τίποτα από τα προηγούμενα

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

ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ

Περιγραφή αλγορίθµων. ιαγράµµατα ροής

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή

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

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

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

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

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

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

1. Όλα τα προβλήματα μπορούν να λυθούν με τη βοήθεια HY. 2. Ο υπολογισμός του εμβαδού τετραγώνου είναι πρόβλημα άλυτο.

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

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

Παρατηρήσεις για την δομή Όσο..επανάλαβε( ΣΟΣ)

Εκτέλεση της εντολής1 και στη συνέχεια εκτέλεση της ΕΝΟΤΗΤΑΣ και της εντολής2 όσο η ΣΥΝΘΗΚΗ είναι αληθής.

Transcript:

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Η γλώσσα προγραμματισμού C++ Επαναληπτικές δομές Δομές ελέγχου 2: επαναληπτική εκτέλεση Δομημένος προγραμματισμός Ακολουθία (s 1 ; s 2 ) Επιλογή (if c then s 1 else s 2 ) Επανάληψη (while c do s) 1

Δομές ελέγχου 2: επαναληπτική εκτέλεση Επαναληπτική χαρακτηρίζεται η εκτέλεση ενός συνόλου εντολών ανάλογα με την ισχύ, δηλαδή την αλήθεια ή το ψεύδος μιας λογικής συνθήκης Για ποιους λόγους είναι χρήσιμη η επαναληπτική εκτέλεση; Γιατί να επαναλάβουμε τις ίδιες πράξεις σε όλαταμέληενόςπληθυσμού(πχ: υπολογισμός της απόστασης διαδοχικών σημείων) Γιατί να προσπαθήσουμε να βρούμε ένα αποτέλεσμα επαναλαμβάνοντας υπολογισμούς μέχρις ότου ισχύει μια συνθήκη (πχ: επίλυση εξίσωσης) Για να επαληθεύσουμε την εγκυρότητα κάποιων δεδομένων που δίνονται Τρεις δομές επαναληπτικής εκτέλεσης στη C++ while (συνθήκη) εντολή do εντολή while (συνθήκη) for (εντολή_αρχικοποίησης; συνθήκη; εντολή_ενημέρωσης) εντολή Επαναληπτική εκτέλεση Η λογική συνθήκη καθορίζει αν θα εκτελεστεί η εντολή "πότε" θα σταματήσει να εκτελείται αν θα σταματήσει να εκτελείται Ο αριθμός των επαναλήψεων (φορών που θα εκτελεστεί η εντολή) μπορεί να είναι Γνωστός εξαρχής (συνήθης χρήση δομής for() ) Αγνωστος και επιπλέον αδιάφορος, εφόσον κάποτε η επανάληψη ολοκληρώνεται Συνήθη προβλήματα μαθητευομένων προγραμματιστών Λάθος ή καθόλου χρήση του block εντολών Λάθος στη λογική συνθήκη Κακή ή καθόλου στοίχιση προγράμματος ιδιαίτερα όταν υπάρχουν και άλλες δομές ελέγχου μέσα σε ένα block εντολών (αναγνωσιμότητα) 2

Η δομή while while (expression( expression) statement Λειτουργία: Αν η συνθήκη είναι αληθής, εκτελείται η εντολή και η ισχύς της συνθήκης ελέγχεται και πάλι. Ηδιαδικασίαέλεγχοςαληθείας εκτέλεση επαναλαμβάνεται μέχρις ότου να μην ισχύει η συνθήκη. Παρατηρήσεις Αν κατά τη στιγμή της εισόδου η συνθήκη είναι ψευδής, η εντολή δεν θα εκτελεστεί καμία φορά Αν η εντολή δεν μεταβάλλει την τιμή της συνθήκης από αληθή σε ψευδή, τότε η εντολή θα εκτελείται επ' άπειρον... Κατά τον πρώτο έλεγχο ισχύος της συνθήκης, αυτή πρέπει να έχει αρχική τιμή. Παράδειγμα Ευρεση του αθροίσματος 10 αριθμών Το πλήθος των αριθμών Το άθροισμα των αριθμών Κάθε αριθμός που διαβάζεται από το πληκτρολόγιο Αρχικές τιμές Οσο ισχύει η συνθήκη αυτή, θα εκτελείται η εντολή Εντολή Ανάγνωση ενός αριθμού Πρόσθεση του αριθμού που διαβάστηκε στο sum Αύξηση κατά 1 του μετρητή των αριθμών που έχουν αθροιστεί 3

Παράδειγμα Μια βελτιωμένη έκδοση του προηγούμενου προγράμματος Παράδειγμα Μια (ακόμη) βελτιωμένη έκδοση του προγράμματος 4

Παράδειγμα Τι (μπορεί να) πέρασε απαρατήρητο... Ο ορισμός των μεταβλητών που χρησιμοποιήθηκαν (συντακτικό σφάλμα) Η αρχικοποίηση με την τιμή μηδέν του αθροιστή και του μετρητή αριθμών Το block εντολών θα εκτελεστεί μόνο αν ισχύει η συνθήκη Προς αποφυγή σφαλμάτων Στοιχίζουμε σωστά το πρόγραμμα Προσθέτουμε σχόλια Εκτελούμε το πρόγραμμα με δοκιμαστικά δεδομένα που δίνουν γνωστό σε μας αποτέλεσμα και συγκρίνουμε τα αποτελέσματα με τα αναμενόμενα Η δομή do while do statement while (expression( expression) Λειτουργία: Η εντολή εκτελείται μία φορά και κατόπιν ελέγχεται η ισχύς της συνθήκης. Αν η συνθήκη είναι αληθής, εκτελείταικαιπάλιηεντολή. Ηδιαδικασία"εκτέλεση έλεγχος συνθήκης" επαναλαμβάνεται μέχρις ότου να μην ισχύει η συνθήκη. Παρατηρήσεις Η εντολή θα εκτελεστεί τουλάχιστον μία φορά Αν η εντολή δεν μεταβάλλει την τιμή της συνθήκης από αληθή σε ψευδή, τότε η εντολή θα εκτελείται επ' άπειρον... 5

Παράδειγμα Το ίδιο πρόγραμμα με χρήση do..while Θα εκτελεστεί τουλάχιστον μία φορά Εντολή Εντολή Επαναληπτική εκτέλεση Μια σύγκριση των δομών while και do while 6

Η δομή for ( ) for (εντολή_αρχικοποίησης; συνθήκη; εντολή_ενημέρωσης ενημέρωσης) εντολή for (initial statement; loop condition; update statement) statement Λειτουργία Εκτελείται η εντολή_αρχικοποίησης Ελέγχεται η συνθήκη και αν ισχύει, εκτελείται η εντολή, διαφορετικά το for τερματίζει. Εκτελείται η εντολή_ενημέρωσης Παρατηρήσεις Σύνθετη και ισχυρή εντολή, ικανή να χρησιμοποιείται ως μόνη εντολή επανάληψης Χρειάζεται προσοχή στην κατανόηση της σειράς εκτέλεσης των εντολών Παράδειγμα Το προηγούμενο πρόγραμμα γραμμένο με for( ) Εντολή αρχικοποίησης Συνθήκη εκτέλεσης Εντολή ενημέρωσης Εντολή που θέλουμε να επαναλαμβάνεται 7

Παράδειγμα Υπολογισμός μέσου όρου 8