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



Σχετικά έγγραφα
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Εισαγωγή στον δομημένο προγραμματισμό

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

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

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

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

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

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

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

Προγραμματισμός Ι. Θεματική ενότητα 4: Έλεγχος ροής Προτάσεις υπό συνθήκη διακλάδωσης

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

8. Συνθήκες ελέγχου, λογικοί τελεστές

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

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

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

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

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

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

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8)

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

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

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

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

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

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

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

Εργαστήριο 5. Εντολή if και παραλλαγές: if-else, πολλαπλές if, πολλαπλές if-else. Απλές και σύνθετες εντολές. Εντολή switch.

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

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

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

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

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

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

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 4

Αρχές Προγραμματισμού

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

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

Δομές ελέγχου & επανάληψης

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Ασκήσεις Επανάληψης

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

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

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

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ

3. ΕΝΤΟΛΕΣ ΕΛΕΓΧΟΥ (Β' μέρος: switch και :? )

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

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

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

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

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

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

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

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

Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;..

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

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

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

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char

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

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

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Χαράλαµπος Σκόκος ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΕΞΕΤΑΣΕΙΣ ΧΕΙΜΕΡΙΝΟΥ ΕΞΑΜΗΝΟΥ Ερωτήσεις

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

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

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

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 3 Εντολές Επιλογής. Γιώργος Λαμπρινίδης Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1

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

Η Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 5 Εντολές Επανάληψης for while do while. Λαμπρινίδης Γεώργιος

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

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

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

Δομές Ελέγχου και Επανάληψης

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

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Προγραμματισμός Ι. Θεματική ενότητα 8: Δημιουργία προγραμμάτων

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

ΠΡΟΓΡΜΜΑΤΑ ΣΕ C. Γράψτε σε γλώσσα προγραμματισμού C τη συνάρτηση:

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΑΣΚΗΣΗ #5 Προτεινόμενη Λύση

Παίρνοντας Αποφάσεις 1

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

Αρχές Προγραμματισμού

Αλγόριθμοι. Χρυσόστομος Στύλιος. Εργαστήριο Γνώσης και Ευφυούς Πληροφορικής. Δομές Δεδομένων & Αλγόριθμοι 1

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ I ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΠΡΟΓΡΑΜΜΑΤΑ ΕΡΓΑΣΤΗΡΙΟΥ

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

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

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

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης

Transcript:

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

Δομές Ελέγχου Οι Boehm και Jacopini απέδειξαν ότι οποιοσδήποτε αλγόριθμος μπορεί να εκφραστείμε συνδυασμούς μόνον τριών διαφορετικών δομών ελέγχου : Ο Dijkstraισχυρίστηκε ότι οποιοσδήποτε αλγόριθμος θα πρέπει να εκφράζεται με χρήση μόνον των τριών δομών ελέγχου (Η GOTO εντολή θα πρέπει να μην χρησιμοποιείται) Μια ψευδογλώσσακαι οι γλώσσες προγραμματισμού παρέχουν μια ποικιλία εντολών για να εκφράσουν τις παραπάνω δομές.

Ακολουθία προτάσεων Ο πιο απλός και συνηθισμένος τρόπος εκτέλεσης μιας ακολουθίας εντολών είναι ο ακολουθιακός: Η κάθε πρόταση εκτελείται μετά από την άλλη Οι γλώσσες δομημένου προγραμματισμού επιτρέπουν πιο ευέλικτες δομές ελέγχου ροής του προγράμματος Δομή υπό-συνθήκη διακλάδωσης Δομή επανάληψης Π1 Π2 Π3

Υπό-συνθήκη διακλάδωση true Ε false true Ε false Π1 Π2 Π1 2 προτάσεις: if E then Π1 else Π2 1 πρόταση: if E then Π1

Σύνθετη δομή επιλογής true Ε1 false if E1 then Π1 true Ε2 false else if Ε2 then Π2 Π1 Π2 Π3 else Π3

Δομή επιλογής (πολλαπλή) Σ1 Σ2 Σ3 ΣΝ Χ Π1 Π2 Π3... ΠΝ If X=Σ1 then Π1 else if X=Σ2then Π2 else if X=Σ3then Π3 else if X=ΣNthen ΠN

Προτάσεις ελέγχου ροής στη C Διακλάδωση υπό συνθήκη if-else switch case

Η πρόταση if if (<συνθήκη>) <πρόταση1> [else <πρόταση2>] if (<συνθήκη1>) <πρόταση1> elseif (<συνθήκη2>) <πρόταση2> else if (<συνθήκη3>) <πρόταση3> else <πρόταση4> Απλή if Εµφωλευµένη if

Παράδειγμα: if Το πρόγραµµα ζητά ένα µη-αρνητικό αριθµό από το χρήστη και τυπώνει την τετραγωνική του ρίζα #include <stdio.h> #include <math.h> /* βιβλ. µαθηµ. συναρτήσεων */ main() { double num; } ώσε ένα θετικό αριθµό:-45 Λάθος είσοδος: Αριθµός αρνητικός _ printf(" ώσε ένα θετικό αριθµό:"); scanf("%lf",&num); if (num<0) printf( Λάθος είσοδος: Αριθµός αρνητικός\n"); else printf( H τετραγωνική ρίζα του %lf είναι %lf\n",num,sqrt(num));

Η πρόταση switch switch (<έκφραση>) { case <σταθ-εκφρ1> : πρόταση1 case <σταθ-εκφρ2> : πρόταση2... case <σταθ-εκφρν> : πρότασην default : πρόταση }

Κανόνες της switch Κάθε case πρέπει να έχει μία int ή char σταθερά ή μία σταθερά έκφραση Δύο caseδεν μπορούν να έχουν την ίδια τιμή Η πρόταση της default εκτελείται όταν καμία από τις case δεν ικανοποιείται H default δεν είναι απαραίτητο να είναι τελευταία

Παράδειγμα: switch... switch(choice) { case 1: result = num1+num2; break; case 2: result = num1-num2; break; case 3: result = num1*num2; break; case 4: if (num2) result = num1/num2; else printf(" εν επιτρέπεται διαίρεση µε το µηδέν\n");break; default: printf("λάθος επιλογή \n"); } printf("to αποτέλεσµα είναι %f",result);

Παράδειγμα: Αριθμομηχανή Να γραφεί πρόγραμμα Cπου να διαβάζει 2 αριθμούς και το σύμβολο μιας αριθμητικής πράξης και να υπολογίζει (εμφανίζει) το αποτέλεσμα Είσοδος: 4 + 5 Έξοδος: 9 Είσοδος: 4 * 5 Έξοδος: 20 Είσοδος: 4 / 5 Έξοδος: 0.8

Αριθμομηχανή #include <stdio.h> main() { float num1, num2; char op; ΩΣΤΕ ΑΡΙΘΜΟ ΠΡΑΞΗ ΑΡΙΘΜΟ : 5 + 3 = 8 _ printf(" ΩΣΤΕ ΑΡΙΘΜΟ ΠΡΑΞΗ ΑΡΙΘΜΟ : "); scanf("%f %c %f", &num1, &op, &num2 ); } if ( op == '+' ) printf ( " = %f", num1 + num2 ); else if ( op == '-' ) printf ( " = %f", num1 - num2 ); else if ( op == '*' ) printf ( " = %f", num1 * num2 ); else if ( op == '/' ) printf ( " = %f", num1 / num2 ); printf ( "\n\n" );

Αριθμομηχανή με switch void main() { float a,b; char op; printf("dose 2 times:\n"); scanf("%f %f",&a,&b); printf("dose telesti praxis:\n"); scanf("%c",&op); switch(op) { case '+': printf(" = %f\n",a+b); break; case '-': printf(" = %f\n",a-b); break; case '*': printf(" = %f\n",a*b); break; case '/': if (b!=0) printf(" = %f\n",a/b); else printf("den orizetai piliko\n"); break; default: printf("lathos telestis\n"); } }

Μενού επιλογών 1. ΠΡΩΤΗ 2. ΕΥΤΕΡΗ 3. ΤΡΙΤΗ 4. ΤΕΤΑΡΤΗ 9. ΕΞΟ ΟΣ #include <stdio.h> main() { int cmd = 0; ΕΠΙΛΟΓΗ : 6 ΛΑΘΟΣ ΕΠΙΛΟΓΗ _ printf(" 1. ΠΡΩΤΗ\n 2. ΕΥΤΕΡΗ\n 3. ΤΡΙΤΗ 4. ΤΕΤΑΡΤΗ 9. EΞΟ ΟΣ\n"); printf("\nεπιλογη : "); scanf("%d", &cmd); } switch ( cmd ) { case 1 : printf("e Ω ΕΚΤΕΛΕΙΤΑΙ Η 1η ΕΠΙΛΟΓΗ\n"); break; case 2 : printf("e Ω ΕΚΤΕΛΕΙΤΑΙ Η 2η ΕΠΙΛΟΓΗ\n"); break; case 3 : printf("e Ω ΕΚΤΕΛΕΙΤΑΙ Η 3η ΕΠΙΛΟΓΗ\n"); break; case 4 : printf("e Ω ΕΚΤΕΛΕΙΤΑΙ Η 4η ΕΠΙΛΟΓΗ\n"); break; case 9 : printf("e Ω ΕΚΤΕΛΕΙΤΑΙ Η ΕΞΟ ΟΣ\n"); break; default: printf("λαθοσ ΕΠΙΛΟΓΗ\n"); }

Άσκηση Να γραφεί πρόγραμμα C που να διαβάζει από το πληκτρολόγιο 2 αριθμούς που αντιστοιχούν στην τιμή ενός προϊόντος και στο ποσό που δίνει κάποιος για να το αγοράσει και υπολογίζει (εμφανίζει) τα ρέστα σε νομίσματα των 10, 5 και 1 ευρώ Είσοδος: τιμή=65, ποσό=100 Έξοδος: 3 των 10 ευρώ και 1 των 5 ευρώ

Διάγραμμα ροής ΑΡΧΗ ιάβασε Τιµή, Ποσό Υπολόγισε Ρέστα Ρέστα<0? ΟΧΙ Υπολόγισε Νοµίσµατα ΝΑΙ Εµφάνισε µήνυµα λάθους ΤΕΛΟΣ

Διάγραμμα ροής: υπολόγισε νομίσματα ΑΡΧΗ Ρέστα<10? ΟΧΙ ΝΑΙ Ρέστα<5? ΟΧΙ ΝΑΙ Εµφάνισε το αποτέλεσµα Υπολόγισε Νοµίσµατα των 10 Υπολόγισε Νοµίσµατα των 5 ΤΕΛΟΣ Υπολόγισε τα υπόλοιπα Ρέστα Υπολόγισε τα υπόλοιπα Ρέστα

Δομές (βρόχοι) επανάληψης Υπό συνθήκη: άγνωστος αριθμός επαναλήψεων Συνθήκη εισόδου Συνθήκη εξόδου Με μετρητή: γνωστός αριθμός επαναλήψεων

Επανάληψη με συνθήκη εισόδου while E Π ΤοΠ μπορεί να μην εκτελεστεί ποτέ loop Ε Π true

Επανάληψη με συνθήκη εξόδου do Π while E ΤοΠ θα εκτελεστεί τουλάχιστον μία φορά true loop Π Ε

Επανάληψη με μετρητή M=E1 for Μ<E2 Π, M++ Μ=Ε1 Το Π θα εκτελεστεί Ε2-Ε1φορές Μ: Μετρητής Μ<Ε2 Μ=Μ+1 loop true Π

Προτάσεις ελέγχου ροής στη C Επανάληψη while do while for Διακλάδωση χωρίς συνθήκη break continue goto

Πρόταση επανάληψης while while (<έκφραση>) <πρόταση> έκφραση αληθής πρόταση ψευδής

Παράδειγμα: while int num, count; double factorial; printf( Dwse arithmo: ); scanf( %d,&num); factorial = 1.0; count = 1; while (count <= num) { } factorial *= count; count++; count<=num αληθής factorial *= i; count++; ψευδής Υπολογισµός παραγοντικού 0!=1 n!=1*2*3... (n-2)*(n-1)*n

Η πρόταση επανάληψης do while do { <πρόταση> }while (<έκφραση>) πρόταση έκφραση ψευδής αληθής

Παράδειγμα: do while count++; printf( count is %d\n, count); count < limit do { ψευδής count++; printf( count is %d\n, count); } while (count < limit) αληθής

Η πρόταση for for (<έκφραση1>; <έκφραση2>; <έκφραση3>) <πρόταση> έκφραση1: αρχικοποίηση έκφραση2: έλεγχος έκφραση3: ενημέρωση αρχικοποίηση αληθής έλεγχος πρόταση ψευδής ενηµέρωση

Παράδειγμα: for for (count=0; count<max_count; count++) { printf( count is %d\n, count); <άλλες προτάσεις> } count=0; count<max_count ψευδής αληθής printf( count is %d\n, count); <άλλες προτάσεις> count++

Επιλογή βρόχου (loop) Προτιμούμε τη δομή συνθήκης εισόδου (while) από τη δομή συνθήκης εξόδου(do while) Αν υπάρχει ή μπορεί να οριστεί απαριθμητής επαναλήψεων, προτιμούμε τη for από την while Γενικά, οτιδήποτε εκφράζεται με τη while μπορεί να εκφραστεί και με τη for

Ισοδυναμία δομών επανάληψης for (e1; e2; e3) Π1; e1; while (e2) { Π1; e3; } e1; do { Π1; e3; } while (e2)

Ένθετοι βρόχοι #include <stdio.h> main() { int i,j,result; for (i=1; i<=10; i++) { for(j=1; j<=10; j++) { result=i*j; printf(" %d\t",result); } printf("\n"); } }

Διακλάδωση χωρίς συνθήκη Διαχείριση ειδικών περιπτώσεων σε προτάσεις επανάληψης break continue Ρητή διακλάδωση Ρητή διακλάδωση goto

Η πρόταση break Προκαλεί την έξοδο μόνο από τον πιο εσωτερικό βρόχο

Χρήση της break while (έκφραση) { if (ειδική περίπτωση) { } προτάσεις επεξεργασίας ειδικών περιπτώσεων break; } προτάσεις επεξεργασίας κανονικής περίπτωσης

Παράδειγμα: break for (i=0; i < max; i++) { } if (num < 0) break; printf( process is continued\n ); printf( end of process\n );

Η πρόταση continue Προκαλεί την έναρξη της επόμενης επανάληψης for, while, do Επηρεάζει μόνο τον πιο εσωτερικό βρόχο while (έκφραση) while (έκφραση) { if (κανονική περίπτωση) { προτάσεις επεξεργασίας κανονικής περίπτωσης continue; } προτάσεις επεξεργασίας ειδικών περιπτώσεων }

Παράδειγμα: continue for (i=0; i < max; i++) { } if (num > 0) continue; printf( process is continued\n ); printf( end of process\n );

Η πρόταση goto goto <ετικέτα>; <ετικέτα> : <πρόταση> Ο έλεγχος μεταφέρεται στην εντολή που σημειώνεται με την ετικέτα Η χρήση της καταστρέφειτη δόμηση του κώδικα Είναι πάνταδυνατό να αποφύγουμε τη χρήση της

Ερωτήσεις; 41