Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους:

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

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

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

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

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

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

Κεφάλαιο : Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) Δομές Έλεγχου Προγράμματος

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

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

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

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

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

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

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

Κεφάλαιο : Επαναλήψεις (for, do-while)

Κεφάλαιο : Επαναλήψεις (oι βρόχος While) ( ιάλεξη 9) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)

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

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

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

Συναρτήσεις. Εισαγωγή

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

C Programming EPL032 Maria Stavrinou Ioannou Εισαγωγή στη Γλώσσα C

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while)

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

Δομές Ανακυκλώσεων. Εντολές ελέγχου - 1

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

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

Ηλεκτρονικοί Υπολογιστές

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

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

Επανάληψη. Εντολές while, for, do-while

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

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 3η Διάλεξη Είσοδος Δεδομένων Συνθήκες Βρόχοι Παραδείγματα

Εντολές επιλογής Επαναλήψεις (if, switch, while)

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

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

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

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

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

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

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

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

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

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

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

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

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

ΗΥ-150. Προγραμματισμός

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

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

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

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

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

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

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

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

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

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος lantzos@teiser.gr

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

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

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

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β

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

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

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

Να γράψετε τα αποτελέσματα αυτού του αλγόριθμου για Χ=13, Χ=9 και Χ=22. Και στις 3 περιπτώσεις το αποτέλεσμα του αλγορίθμου είναι 1

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

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

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

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

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

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

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

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

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

Γλώσσα Προγραμματισμού C

for for for for( . */

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ:

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/2006

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

ΗΥ-150. Προγραμματισμός

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #3

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ

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

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

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

Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 5 ο Μέρος 5 ο Μέρος Εντολές Επανάληψης: FOR - WHILE. Περιγραφή

Προσέξτε πως η παράσταση μπορεί να περιλαμβάνει όχι μόνο μία τιμή ή μια άλλη μεταβλητή αλλά μια ολόκληρη μαθηματική παράσταση, όπως η εξής:

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

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

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Προγραμματισμό για ΗΜΥ

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

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

Transcript:

Επαναλήψεις - Loops Οι επαναλήψεις σε ένα πρόγραμμα μας επιτρέπουν μια ομάδα εντολών να εκτελείται για όσες φορές επιθυμούμε Υπάρχουν τρεις τρόποι επανάληψης εντολών με τη χρήση: While loops For loops Do- loops Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους: Kind Counting loop Sentinel-controlled loop Endfile-controlled loop Input validation loop General conditional loop When used We can determine bee loop execution exactly how many loop repetitions will be needed to solve the problem Input of a list of data of any length by a special value Input o a single list of data of any length from a data file Repeated interactive input of a data value until a value within a valid range is entered Repeated processing of data until a desired condition is met C Implementation Structures do- While Το έχει την ακόλουθη σύνταξη: (συνθήκη) Εντολή 1; Εντολή 2; Όσο η συνθήκη είναι αληθής, οι εντολές μέσα στα εκτελούνται η μια μετά την άλλη Πιο κάτω, δίνεται ένα παράδειγμα που ανήκει στην κατηγορία counting loop:

/*Εμφάνιση N αστερίσκων*/ count_star = 0; (count_star < N ) printf( * ); count_star = count_star + 1; Επεξήγηση σειράς εκτέλεσης επανάληψης: Η συνθήκη ελέγχεται Αν είναι αληθής, οι εντολές μέσα στο εκτελούνται και η συνθήκη ελέγχεται και πάλι Οι εντολές μέσα στο εκτελούνται ενόσω η συνθήκη είναι αληθής Όταν η συνθήκη γίνει ψευδής, το τερματίζει, οι εντολές μέσα σε αυτό αγνοούνται και το πρόγραμμα συνεχίζει την εκτέλεση του μετά το Ένα άλλο παράδειγμα που ανήκει στην κατηγορία conditional loop ακολουθεί: int number=1 /*To stamata otan o xristis grapsei 0*/ (number) printf("\nenter a number:"); scanf("%d", &number); Στο πιο πάνω παράδειγμα δε γνωρίζουμε εκ των προτέρων, τον αριθμό των επαναλήψεων που θα εκτελεστούν Το τερματίζει μόνο όταν ο χρήστης γράψει 0 Μελέτη Περίπτωσης Να γραφτεί ένα πρόγραμμα σε C στο οποίο ο χρήστης θα καταχωρεί τρεις αριθμούς που αντιπροσωπεύουν βαθμούς σε μαθήματα Οι τρεις αριθμοί έχουν πεδίο τιμών από 1 μέχρι και 100 Ακολούθως, το πρόγραμμα θα υπολογίζει το μέσο όρο τους και θα τυπώνει το τελικό βαθμό με βάση τα πιο κάτω κριτήρια: Αν ο μέσος όρος βρίσκεται μεταξύ: 86-100 Τύπωσε το χαρακτήρα Α 65-85 Τύπωσε το χαρακτήρα Β 50-64 Τύπωσε το χαρακτήρα C

25-49 Τύπωσε το χαρακτήρα D 1-24 Τύπωσε το χαρακτήρα E Το πρόγραμμα να κάνει επίσης έλεγχο για την ορθότητα των βαθμών που δίνονται από το χρήστη Σε περίπτωση που ο χρήστης δώσει βαθμό έξω από το πεδίο τιμών 1 100, θα τυπώνεται μήνυμα λάθους και θα επιτρέπει στο χρήστη να δώσει νέο βαθμό Εντολή Επανάληψης : Η εντολή ( αρχική τιμή; συνθήκη; μετρητής) εντολή1; εντολη2; εντολήν; Η επανάληψη ξεκινά με τη λέξη κλειδί ακολουθούμενη από ένα ζεύγος παρενθέσεων οι οποίες περιέχουν τρείς προτάσεις που χωρίζονται μεταξύ τους με ερωτηματικό Ο βρόχος που ορίζει η εκτελείται ως εξής: 1 Υπολογίζεται η αρχική τιμή 2 Ελέγχεται η συνθήκη και εάν είναι αληθής τότε εκτελούνται οι εντολές 3 Υπολογίζεται ο μετρητής 4 Ο βρόχος συνεχίζει από το βήμα 2 Σημείωση : Η πρόταση αρχικοποίησης μπορεί να είναι όσο σύνθετη θέλουμε, χωρίζοντας διαδοχικές προτάσεις με κόμμα, καλό είναι όμως να μη το παρακάνουμε Το δεύτερο μέρος είναι η συνθήκη ελέχου, η οποία συνθήκη εξετάζεται κατά την

είσοδο κάθε επανάληψης Η συνθήκη μπορεί να είναι οσοδήποτε περίπλοκη αρκεί να καταλήγει σε μιά τιμή (αληθή ή ψευδή) Το τρίτο τμήμα περιέχει συνήθως τη πρόταση αύξησης ενός μετρητή και εκτελείται στο τέλος κάθε επανάληψης, δηλαδή μετά την εκτέλεση των προτάσεων του σώματος Μπορεί, όπως και το πρώτο πεδίο της, να περιέχει αρκετές προτάσεις χωρισμένες με κόμμα Παράδειγμα (τυπώνει τους αριθμούς 0-9): #include <stdioh> main() int i; (i = 0; i < 10; i++) printf("%d\n", i); Η ακριβής συσχέτιση των επαναλήψεων και δίνεται παρακάτω αρχικοποίηση; (αρχικοποίηση; συνθήκη; αύξηση) (συνθήκη) εντολή; εντολή; εντολή; εντολή; αύξηση; Η βασική χρήση της επανάληψης είναι σε περιπτώσεις που ο αριθμός των επαναλήψεων εκφράζεται με βάση κάποια μαθηματικού τύπου έκφραση και την αύξηση ή μείωση κάποιου μετρητή (πχ πράξεις πινακοποιημένων δεδομένων), ενώ η χρήση της επανάληψης προορίζεται γιά περιπτώσεις που ο αριθμός των επαναλήψεων είναι γενικά απροσδιόριστος και η συνθήκη ελέγχου είναι μιά λογική συνθήκη η οποία στηρίζεται στα εκάστοτε δεδομένα (πχ επεξεργασία αρχείων)

Αλλοι τρόποι γραφής της δομής : (a) (i= 1, sum=0; i<=10; ++i) sum+= i; /* sum = sum + i ; */ (b) (i= 1, sum=0; i<=10; sum+=i,++i) /* empty statements */ Ασκήσεις για την τάξη Άσκηση 1 Γράψετε ένα πρόγραμμα που να τυπώνει στην οθόνη τους αριθμούς από το 5 μέχρι το 1 Output : 5 4 3 2 1 Άσκηση 2 Γράψετε ένα πρόγραμμα το οποίο διαβάζει από το πληκτρολόγιο 10 ακέραιους αριθμούς με επανάληψη ένα κάθε φορά και στο τέλος τυπώνει τον μέσο όρο των αριθμών αυτών στην οθόνη Output : Enter a number: 2 Enter a number: 4 Enter a number: 3 The Average is : 6

Άσκηση 3 Γράψετε ένα πρόγραμμα το οποίο να τυπώνει 20 φορές (ι = 1 μέχρι ι<20) τις τιμές που παίρνει κάθε φορά η μεταβλητή ι, η μεταβλητή j αν υψώσουμε το ι στο τετράγωνο και η μεταβλητή κ αν υψώσουμε το ι στην τρίτη δύναμη Σημείωση : Χρήση του \t Output i j k -------------- 1 1 1 2 4 8 3 9 27 4 16 64 5 25 125 20 400 8000