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

Σχετικά έγγραφα
Η γλώσσα προγραμματισμού C

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

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

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

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

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

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

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

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

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

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

for for for for( . */

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

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

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

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

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

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

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

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

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

EΒ ΟΜΑ Α 4 Η. οµές επανάληψης while και do while

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 4 Ο. Δομή επανάληψης Επανάληψη με συνθήκη Ατέρμονη επανάληψη Πίνακας ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ενότητα 4: «Εισαγωγή στον Προγραμματισμό. Τα πρώτα προγράμματα σε γλώσσα C»

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

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

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

Λογικό "και" (AND) μας επιστρέφει 1 αν και οι δύο operands είναι όχι μηδέν, διαφορετικά 0)

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

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

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

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

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

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

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

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

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

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

που θα δώσει αποτέλεσµα 48, λόγω της αριστερής προσεταιριστικότητας των τελεστών / και *, ενώ η επιθυµητή αντικατάσταση θα ήταν η

Transcript:

Η γλώσσα προγραμματισμού C Οι εντολές επανάληψης (while, do-while, for)

Γενικά για τις εντολές επανάληψης Συχνά στο προγραμματισμό είναι επιθυμητή η πολλαπλή εκτέλεση μιας ενότητας εντολών, είτε για ένα συγκεκριμένο αριθμό επαναλήψεων, είτε όσο ισχύει κάποια συνθήκη. Τέτοιου είδους εντολές στη C είναι: while do - while for goto (δεν την χρησιμοποιούμε ) Ο έλεγχος της επανάληψης γίνεται με τη βοήθεια των λογικών εκφράσεων/προτάσεων. Οι εντολές επανάληψης ονομάζονται και «βρόγχοι». 2

Η σύναξη της εντολής while H γενική σύνταξη της εντολής είναι: while (<ΣΥΝΘΗΚΗ>) ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ H ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ μπορεί να περιλαμβάνει μία εντολή ή πολλές εντολές (block) που περικλείονται σε άγκιστρα ({,). Οι εντολές (ή η εντολή) της ΕΝΟΤΗΤΑΣ_ΕΝΤΟΛΩΝ εκτελούνται όσο ισχύει η <ΣΥΝΘΗΚΗ> (είναι αληθής). Θυμηθείτε: <ΣΥΝΘΗΚΗ> αληθής: διάφορη του μηδενός <ΣΥΝΘΗΚΗ> ψευδής: ίση με μηδέν Όταν η <ΣΥΝΘΗΚΗ> γίνει ψευδής, τότε σταματά η εκτέλεση των εντολών της ενότητας. Η <ΣΥΝΘΗΚΗ> ελέγχεται στη αρχή του βρόγχου. Άρα αν η <ΣΥΝΘΗΚΗ> είναι ψευδής πριν ξεκινήσει ο βρόγχος, τότε οι εντολές της ΕΝΟΤΗΤΑΣ_ΕΝΤΟΛΩΝ δεν εκτελούνται ποτέ (ούτε μια φορά). 3

Γραφική αναπαράσταση της δομής while Πριν την δομή τo πρόγραμμα έχει εκτελέσει τις προηγούμενες εντολές Συνθήκη 0 (έναρξη) Εντολές Προγράμματος Σε κάθε επανάληψη γίνεται εκτίμηση της συνθήκης ΑΛΗΘΗΣ ΣΥΝΘΗΚΗ Εκτελούνται όσο η ΣΥΝΘΗΚΗ είναι αληθής βρόγχος ΨΕΥΔΗΣ Συνθήκη = 0 ΕΝΟΤΗΤΑ ΕΝΤΟΛΩΝ Μετά τη δομή τo πρόγραμμα προχωράει και εκτελεί τις επόμενες εντολές Εντολές Προγράμματος (συνέχεια) 4

Παρατηρήσεις στη while Η <ΣΥΝΘΗΚΗ> μπορεί να είναι λογική πρόταση, έκφραση συσχετισμού, αποτέλεσμα κάποιας πράξης, είτε ακόμα και κάποια μεταβλητή. Αν η ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ περιέχει μόνο μία εντολή τότε τα άγκιστρα ({,) μπορούν να παραλειφθούν. Αν βάζουμε το ελληνικό ερωτηματικό «;» στο τέλος της while τότε η εντολή θεωρείται ξεχωριστή και ουσιαστικά δεν εκτελείται η ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ. Αν η <ΣΥΝΘΗΚΗ> σε μια while είναι πάντα αληθής, τότε ο βρόγχος δεν τερματίζει ποτέ (ατέρμων βρόγχος infinity loop). Παράδειγμα ατέρμονος βρόγχου: while (1) Αν η <ΣΥΝΘΗΚΗ> είναι ψευδής από την αρχή, τότε δεν θα εκτελεστεί ποτέ η ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ. 5

Παράδειγμα -1 (while) Εκτέλεση i while (i<5) Έξοδος (printf) 1 1 1 2 1 2 3 1 3 4 1 4 5 0 end Δοκιμάστε: while (++i<5) while (i++<5) printf("%d\n",i); printf("%d\n",i); #include <stdio.h> main() { int i =1; while (i<5) { printf("%d\n",i); i=i+1; printf( end ); getchar(); getchar(); 6

Παράδειγματα -2 (while) Παρουσίαση αριθμών από 0 έως Ν. Το Ν δίνεται. int i,n; i = 0; while (i < N) { printf("i is now %d!\n", i); i++; int i,n, sum; i = 1; sum=0; while (i <= N) { Εύρεση αθροίσματος 1+2+3+ +Ν sum=sum+i; i++; printf("sum=%d\n", sum); 7

Η εντολή do -while H γενική σύνταξη της εντολής είναι: do ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ while (<ΣΥΝΘΗΚΗ>); Συνεχής εκτέλεση της ΕNOTHTAΣ_ΕΝΤΟΛΩΝ μέχρι η <ΣΥΝΘΗΚΗ> να μην είναι αληθής. Ο έλεγχος εδώ γίνεται στο τέλος του βρόγχου (αντίθετα με τη while). H ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ εκτελείται τουλάχιστον μία φορά (ακόμα και αν η <ΣΥΝΘΗΚΗ> είναι ψευδής). Το while στο τέλος της εντολής do-while πρέπει να τελειώνει με το ελληνικό ερωτηματικό (;) 8

Γραφική αναπαράσταση της δομής do-while (έναρξη) Εντολές Προγράμματος Πριν την δομή τo πρόγραμμα έχει εκτελέσει τις προηγούμενες εντολές ΑΛΗΘΗΣ Συνθήκη 0 ΕΝΟΤΗΤΑ ΕΝΤΟΛΩΝ βρόγχος ΣΥΝΘΗΚΗ ΨΕΥΔΗΣ Εντολές Προγράμματος (συνέχεια) Συνθήκη = 0 Εκτελούνται όσο η ΣΥΝΘΗΚΗ είναι αληθής Σε κάθε επανάληψη γίνεται εκτίμηση της συνθήκης Μετά τη δομή τo πρόγραμμα προχωράει και εκτελεί τις επόμενες εντολές 9

Παράδειγματα (do - while) Παρουσίαση αριθμών από 0 έως Ν. Το Ν δίνεται. int i,n; i = 0; do { printf("i is now %d!\n", i); i++; while (i<n); int i,n, sum; i = 1; sum=0; do { Εύρεση αθροίσματος 1+2+3+ +Ν sum=sum+i; i++; while (i <= N); printf("sum=%d\n", sum); 10

Η εντολή for Γενική σύνταξη της for: for (Eντολή1; <ΣΥΝΘΗΚΗ>; Eντολή2) ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ Η Εντολή1 μπορεί να είναι και περισσότερες από μία εντολές που συνήθως καθορίζουν κάποιες αρχικές τιμές. Εκτελείται μία φορά. Η Εντολή2 είναι συνήθως μια παράσταση που συνήθως αλλάζει τη τιμή μιας μεταβλητής που βρίσκεται στη <ΣΥΝΘΗΚΗ>. Μπορεί να είναι και πάνω από μία εντολή. Η ανάπτυξη της εντολής for είναι η εξής: Εκτέλεση της Εντολής1 και στη συνέχεια εκτέλεση της ΕΝΟΤΗΤΑΣ_ΕΝΤΟΛΩΝ και της Εντολής2, όσο η <ΣΥΝΘΗΚΗ> είναι αληθής 11

Παρατηρήσεις για τη for Χρησιμοποιούμε την for όταν γνωρίζουμε εκ των προτέρων τον αριθμό επαναλήψεων. Δεν βάζουμε το ελληνικό ερωτηματικό «;» στο τέλος της for: For (i = 0; i< 1000; i++); // απλά αυξάνει το i 1000 φορές Όταν η Εντολή1 και η Εντολή2 αποτελούνται από πολλές εντολές τότε αυτές χωρίζονται με κόμμα (,): for (i=0, k=0; (i < 5 && k < 3); i++, k++) Δεν είναι απαραίτητο να υπάρχουν και τα 3 τμήματα της for. Όμως υπάρχει πάντα το διαχωριστικό «;» μεταξύ των τμημάτων. for (;;;) { εντολές // ατέρμων βρόγχος infinity loop Φυσικά αν η <ΣΥΝΘΗΚΗ> είναι ψευδής δεν θα εκτελεστεί ποτέ η ΕΝΟΤΗΤΑ_ΕΝΤΟΛΩΝ. 12

Παραδείγματα με τη for Παρουσίαση αριθμών από 0 έως Ν. Το Ν δίνεται. int i,n; for (i = 0; i<n;i++) { printf("i is now %d!\n", i); Εύρεση αθροίσματος 1+2+3+..+Ν int i,n, sum; sum=0; for (i = 0; i<=n;i++) sum=sum+i; printf("sum=%d\n", sum); 13

Παρουσίαση αριθμών από 0 έως Ν. Το Ν δίνεται. i = 0; while (i < N) { printf("i is now %d!\n", i); i++; for (i = 0; i<n;i++) { printf("i is now %d!\n", i); i = 0; do { printf("i is now %d!\n", i); i++; while (i<n); 14

Εύρεση αθροίσματος 1+2+3+...+Ν i = 1; sum=0; do { sum=sum+i; i++; while (i <= N); printf("sum=%d\n", sum); i = 1; sum=0; while (i <= N) { sum=sum+i; i++; printf("sum=%d\n", sum); sum=0; for (i = 0; i<=n;i++) sum=sum+i; printf("sum=%d\n", sum); 15

Εύρεση αθροίσματος Ν ακεραίων (for) int i,n,a,sum; sum=0; for (i = 1; i<=n;i++) { printf("dwste akeraio:"); scanf("%d",&a); sum=sum+a; printf("sum=%d\n", sum); 16

Εύρεση αθροίσματος Ν πραγματικών (while) int i, N; float F, sum; i=1; sum=0; while (i<=n) { printf("dwste pragmatiko:"); scanf("%f",&f); sum=sum+f; i++; printf("sum=%f\n", sum); 17

Εύρεση Μέσου Όρου Ν πραγματικών (do-while) int i, N; float F, sum, MO; i=1; sum=0; do { printf("dwste pragmatiko:"); scanf("%f",&f); sum=sum+f; i++; while (i<=n) ; MO=sum/N; printf("mesos Oros=%f\n", MO); Ο μέσος όρος είναι πάντα πραγματικός (αποτέλεσμα διαίρεσης) 18

Η εντολή break Χρησιμοποιείται για ηθελημένο τερματισμό ενός βρόχου (for, while ή do-while). Επίσης για το τερματισμό της switch. Η εκτέλεση του break μέσα στο βρόγχο μεταφέρει τον έλεγχο του προγράμματος στην εντολή που ακολουθεί τον βρόγχο. int i,n, sum; sum=0; for (i = 0; i<=n;i++) { if (i==5) break; sum=sum+i; printf("sum=%d\n", sum); Θα βρει το άθροισμα μόνο των 1+2+3+4 19

Η εντολή continue Στο σημείο που χρησιμοποιείται στους βρόγχους διακόπτεται η εκτέλεση της ΕΝΟΤΗΤΑΣ_ΕΝΤΟΛΩΝ και ξεκινά την επόμενη επανάληψη. Δεν διακόπτεται ο βρόγχος αλλά η τρέχουσα επανάληψη. int i,n, sum; sum=0; for (i = 0; i<=n;i++) { if (i>=5) continue; sum=sum+i; printf("sum=%d\n", sum); Θα βρει το άθροισμα μόνο των 1+2+3+4 20

Να βρεθεί το πλήθος των αριθμών που χαρακτηρίζεται από κάποια ιδιότητα (πχ μεγαλύτεροι του 100) int i,n,a,m; i=1; M=0; while(i<=n) { printf("dwste akeraio:"); scanf("%d",&a); if (A>100) M++; i++; printf("diavasa %d arithmous >100\n", M); Χρησιμοποιούμε κάποια μεταβλητή σαν μετρητή Ο μετρητής είναι πάντα ακέραιος και δεν ξεχνάμε να τον μηδενίζουμε πριν. Αυξάνω τον μετρητή Μ κάθε φορά που βρίσκω την ιδιότητα 21

Διαβάστε Ν αριθμούς και βρείτε τον μικρότερο τους int i,n,a,min; printf("dwste akeraio:"); scanf("%d",&a); min=a; for (i = 2; i<=n;i++) { printf("dwste akeraio:"); scanf("%d",&a); if (A<min) min=a; printf("to min einai: %d \n", min); Διαβάζουμε ξεχωριστά τον 1 ο αριθμό Δίνουμε σαν αρχική τιμή στο min τη τιμή του 1 ου αριθμού που διαβάζουμε. Γιατί i = 2; 22

Ένθετoι βρόγχοι Ένας βρόγχος μπορεί αν συμπεριλαμβάνει και άλλες εντολές, καθώς επίσης και άλλους βρόγχους (βρόχοι μέσα σε βρόγχο). Σε αυτές τις περιπτώσεις θα πρέπει να είμαστε προσεκτικοί στους δείκτες που χρησιμοποιούνται στους βρόγχους. main() { int i,j,n; Προπαίδεια 1-10 for( i=1; i<=10; i++ ){ for( j=1; j<=10; j++ ) printf("%d\t",i*j); printf("\n"); Τι θα άλλαζε για τη προπαίδεια 1-5 for( i=1; i<=4; i++ ){ for( j=1; j<=5; j++ ) printf("*"); Θα τυπωθούν 20 (4x5) αστερίσκοι. Είναι απαραίτητος ο ένθετος βρόγχος? 23

Ένθετoι βρόγχοι -παραδείγματα int i,j,n; printf("dwste n: "); scanf("%d", &n); for( i=1; i<=n; i++ ){ for( j=1; j<=i; j++ ) printf("*"); printf("\n"); Αν αντί για * βάλουμε i? Αν αντί για * βάλουμε j? for (i = 1; i <= n; i++) { for (j=1;j<=n-i;j++) printf (" "); for (j=1;j<=i;j++) printf ("*"); printf("\n"); Έξοδος Dwste n: 5 * ** *** **** ***** * ** *** **** ***** 24

Ένθετoι βρόγχοι -και άλλο παράδειγμα printf("please give n: "); scanf("%d", &n); for (i = 1; i <= n; i++) { for( j=1; j<=i; j++ ) printf("*"); for (j=i;j<=2*n-i;j++) printf (" "); for (j=1;j<=i;j++) printf ("*"); printf("\n"); Έξοδος * * ** ** *** *** **** **** ***** ***** 25

Ένθετoι βρόγχοι -και άλλο παράδειγμα printf("please give n: "); scanf("%d", &n); for (i = 1; i <= n; i++) { for (j=1;j<=n-i;j++) printf (" "); for (j=1;j<=i;j++) printf ("*"); if (i!= 1) for( j=2; j<=i; j++ ) printf("*"); printf("\n"); Έξοδος (n=5) * *** ***** ******* ********* 26

Λάθη με τους ένθετους βρόγχους printf("please give n: "); scanf("%d", &n); for( i=1; i<=n; i++ ){ for( j=1; i<=n/2; j++ ) printf("j"); printf("\n"); printf("please give n: "); scanf("%d", &n); for( i=1; i<=n; i++ ){ for( j=1; j<=n/2; i++ ) printf("j"); printf("\n"); 27

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