Βρόχος με συνθήκη εισόδου στη C, οδηγούμενος από μετρητή: for

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Προγραμματισμός Ι (αποφύγετέ τον!) 3) Διακοπτόμενος βρόχος: (αποφύγετέ τον!) float energy;......while(TRUE){drink_water(); if(energy
Advertisements

Υποθέτοντας ότι ο τελεστής ^ δεν είναι διαθέσιμος στην Γλώσσα Προγραμματισμού, να γραφτεί αλγόριθμος που να υπολογίζει την παράσταση xν, όπου xR, νZ.
Προγραμματισμός Ι Προτάσεις ελέγχου ροής Ο πιο συνηθισμένος τρόπος εκτέλεσης είναι ο ακολουθιακός: δύο ή περισσότερες προτάσεις βρίσκονται διατεταγμένες.
ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ.
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
Προγραμματισμός Ι Παράδειγμα: Παράδειγμα:Να γραφεί πρόγραμμα που να δέχεται ως είσοδο κείμενο, να απαριθμεί τις εμφανίσεις των ψηφίων 0-9, τα λευκά διαστήματα.
1/12/2003Εισαγωγή στο OpenMP1 OpenMP Αθήνα, Νοέμβριος 2003 Συστήματα Παράλληλης Επεξεργασίας Εργαστήριο Υπολογιστικών Συστημάτων.
Τύποι πραγματικών αριθμών
ΗΥ-150 Προγραμματισμός Εντολές Ελέγχου Ροής.
Τελεστές ανάθεσης (assignment)
Ενότητα Η Δομή Επανάληψης
ΕΛΕΓΧΟΣ ΡΟΗΣ ΜΑΘΗΜΑ 4. ΑΚΟΛΟΥΘΙΑΚΗ ΕΚΤΕΛΕΣΗ ΠΡΟΤΑΣΕΩΝ ΠΡΟΤΑΣΗ Α ΠΡΟΤΑΣΗ Β ΠΡΟΤΑΣΗ Γ ………………. ΠΡΟΤΑΣΗ n ΠΡΟΤΑΣΗ Α ΠΡΟΤΑΣΗ Β ΠΡΟΤΑΣΗ Γ ………………. ΠΡΟΤΑΣΗ n.
Προγραμματισμός Ι Προτάσεις επανάληψης - γενικά επαναλαμβάνουν ένα μπλοκ προτάσεωνΟι προτάσεις επανάληψης επαναλαμβάνουν ένα μπλοκ προτάσεων είτε για όσες.
Τι θα κάνουμε Στο υπάρχον σενάριο θα προστεθούν 3 λειτουργίες : Όταν το αυτοκίνητο βρίσκεται εκτός πίστας η μέγιστη δυνατή μονάδα μετατόπισής του θα μειώνεται.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
Υποθετικός τελεστής Ο υποθετικός τελεστής (?:) αποτελείται από δύο σύμβολα. Ανήκει στην κατηγορία των τελεστών που αποτελούνται από συνδυασμό συμβόλων.
Σχεδίαση αλγορίθμων (2ο μέρος)
ΒΡΟΧΟΙ ΜΑΘΗΜΑ 5. ΒΡΟΧΟΙΒΡΟΧΟΙ Ο Βρόχος (loop) αποτελείται από προτάσεις επανάληψης. Οι προτάσεις επανάληψης είναι οι προτάσεις που επαναλαμβάνουν ένα.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
Eντολες Επαναληψης - Βροχοι (repetition and loops)
ΚMΕΚMΕ Η σχεδίαση ψηφιακών κυκλωμάτων όπως η ΚΜΕ ενός Η/Υ απαιτεί συμβιβασμούς μεταξύ αντικρουόμενων παραγόντων: ΧΡΟΝΟΣ ΕΚΤΕΛΕΣΗΣΚΟΣΤΟΣΕΠΙΦΑΝΕΙΑΠΟΛΥΠΛΟΚΟΤΗΤΑ.
ΕΠΛ Θεωρία και Πρακτική Μεταγλωττιστών8-1 Μετάφραση κατευθυνόμενη από τη σύνταξη Ένας μεταγλωττιστής πρέπει όχι απλώς να αναγνωρίζει κατά πόσο μία.
Σχεδίαση Αλγορίθμων. Διεργασίες (1/2) Μία διεργασία αλληλεπιδρά με το περιβάλλον της δεχόμενη είσοδο και παράγοντας έξοδο.
Ενότητα Α.4. Δομημένος Προγραμματισμός
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Eντολες Επαναληψης - Βροχοι (repetition and loops)
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Συγγραφείς Α.Βακάλη Η. Γιαννόπουλος Ν. Ιωαννίδης Χ.Κοίλιας Κ. Μάλαμας Ι. Μανωλόπουλος Π. Πολίτης Γ΄ τάξη.
Δομή επανάληψης Η δομή επανάληψης είναι μια ολοκληρωμένη πρόταση η οποία περικλείει μια συνθήκη και μια ομάδα εντολών, οι οποίες εκτελούνται, όσο ικανοποιείται.
Επανάληψη.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΤΟ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ ΓΛΩΣΣΑΣ PASCAL ΠΑΡΟΥΣΙΑΣΗ ΠΑΡΑΔΕΙΓΜΑΤΟΣ: ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΜΕ ΤΙΣ ΤΡΕΙΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ. ΥΠΟΛΟΓΙΣΤΗΣ Μηχανή που μπορεί να φέρει σε πέρας πνευματικές εργασίες ρουτίνας με μεγάλη ταχύτητα.
Η Δομή Επανάληψης οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες… Η παρουσίαση της εντολής Μέχρις_ότου είναι από την εισήγηση των κ. Σ. Δουκάκη.
Γλώσσα Προγραμματισμού LOGO
ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Ξενοφών Ζαμπούλης ΜΑΘ3122/106 – Γλώσσα προγραμματισμού Επανάληψη.
ΚΕΦΑΛΑΙΟ Τι είναι αλγόριθμος
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ «Εισαγωγή στον οντοκεντρικό προγραμματισμό (βασική εισαγωγή στο περιβάλλον εργασίας)» Ρουσσάκης Ιωάννης, ΤΕΙ Κρήτης,
Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της οποίας η τιμή θα περάσει από την αρχική.
Δομές Επανάληψης ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ.
Προτάσεις, εκφράσεις, τελεστές Βασικά στοιχεία ελέγχου προγράμματος
Τεχνολογία και Προγραμματισμός Υπολογιστών
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
Αντικειμενοστραφής Προγραμματισμός Ι
Δομή Επιλογής Χρησιμοποιείται σε προβλήματα όπου χρειάζεται να ληφθούν κάποιες αποφάσεις με βάση κάποια δεδομένα κριτήρια. Περιλαμβάνει τον έλεγχο κάποιας.
Βρόχος Do … Loop Σκοπός Μαθήματος Χρήση Do… Loop για την εκτέλεση μιας ομάδας εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη.
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
Ενισχυτική διδασκαλία
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
ΔΙΑΧΩΡΙΣΤΙΚΗ ΟΜΑΔΟΠΟΙΗΣΗ Εισαγωγή
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ «ΓΙΑ» Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της.
Οι διάφορες εκδοχές της
Ενότητα 5 : Δομές Ελέγχου της γλώσσας PHP Ιωάννης Τσούλος
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Επανάληψη.
Τελεστές και ή όχι Για την εκτέλεση αριθμητικών πράξεων
Δομή Επιλογής Μάθημα 4ο Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τάξη Γ Οικονομίας & Πληροφορικής Θετικών Σπουδών 2ο Γενικό Λύκειο Αλιβερίου |
ΒΙΒΛΙΟ ΠΛΗΡΟΦΟΡΙΚΗΣ Σελίδες 2ο Κεφάλαιο - Παράγραφο 2.7 ΔΟΜΗ ΕΠΙΛΟΓΗΣ
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Από τη Δομή Επανάληψης Για στην Όσο
οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες…
Ενότητα Γ7.3.8(Προβλήματα Ακολουθιακής Δομής )
Ιεραρχική σχεδίαση Καθορίζονται οι βασικές λειτουργίες σε ανώτερο επίπεδο και στη συνέχεια γίνεται διάσπαση σε όλο και μικρότερες λειτουργίες μέχρι το.
Από τη Δομή Ακολουθίας στις Δομές Επανάληψης
Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου
Καταχωρητής Ι3 Α3 D Ι2 Α2 D Ι1 Α1 D Ι0 Α0 D CP.
Μεταγράφημα παρουσίασης:

Βρόχος με συνθήκη εισόδου στη C, οδηγούμενος από μετρητή: for έναρξη όχι for (αρχική; συνθήκη; μετρητής) { προτάσεις; } αληθής(συνθήκη); ναι { μπλοκ προτάσεων; } τερματισμός

Βρόχος με συνθήκη εισόδου στη C, οδηγούμενος από μετρητή: for Αρχικοποίησε το μετρητή Έλεγξε τη συνθήκη Εάν είναι αληθής Εκτέλεσε τις προτάσεις Ενημέρωσε το μετρητή Επάνελθε στον έλεγχο της συνθήκης Αλλιώς ενημέρωσε το μετρητή και σταμάτησε

Βρόχος με συνθήκη εισόδου στη C, οδηγούμενος από μετρητή: for O βρόχος for στη γλώσσα C παρέχει μεγάλη ευελιξία καθώς οι εκφράσεις μέσα στις παρενθέσεις μπορούν να έχουν πολλές παραλλαγές: Μπορεί να χρησιμοποιηθεί ο τελεστής μείωσης για μέτρηση προς τα κάτω: for (n=10; n>0; n- -) printf( "n=%d\n",n ); Το βήμα καθορίζεται από το χρήστη: for (n=0; n<60; n=n+13) printf( "n=%d\n",n ); Ο μετρητής μπορεί να αυξάνει κατά γεωμετρική πρόοδο: for (n=2; n<60.0; n=1.2*n) printf("n=%f\n",n );

Βρόχος με συνθήκη εισόδου στη C, οδηγούμενος από μετρητή: for Χρησιμοποιώντας την ιδιότητα ότι κάθε χαρακτήρας του κώδικα ASCII έχει μία ακέραια τιμή, ο μετρητής μπορεί να είναι μεταβλητή χαρακτήρα. Το παρακάτω τμήμα κώδικα θα τυπώνει τους χαρακτήρες από το ‘a’ έως το ‘z’ μαζί με τον ASCII κωδικό τους: for (n=‘a’; n<‘z’; n++) printf( "n=%d, the ASCII value is %d\n",n,n ); Θα πρέπει να σημειωθεί ότι εάν το σώμα του βρόχου αποτελείται από μία πρόταση, δεν απαιτούνται {}. Ωστόσο προτείνεται η χρήση των αγκίστρων σε κάθε περίπτωση, ανεξάρτητα από τον αριθμό των προτάσεων που απαρτίζουν το σώμα του βρόχου.

Παράδειγμα: int count, max_count=30; for (count=1;count<max_count;count++) { printf(“count is %d\n”,count); <άλλες προτάσεις>; } <επόμενη πρόταση>;

Παράδειγμα: Να γραφεί πρόγραμμα που να διαβάζει από την είσοδο ένα αλφαριθμητικό και το τυπώνει times φορές. #include <stdio.h> #define MAX_CHAR 80 void main() { char str[MAX_CHAR]; int i,times; printf( “\nEnter a string:” ); scanf( “%s”,str ); printf( “\nEnter the number of repetitions:” ); scanf( “%d”,&times ); for (i=0; i<times; i++) printf( “%s\n”,str ); } Δεν απαιτείται & για τους πίνακες χαρακτήρων

Βρόχος με συνθήκη εξόδου στη C, οδηγούμενος από γεγονός/μετρητή: do{}while() έναρξη do { προτάσεις στις οποίες αλλάζει η συνθήκη; } while (συνθήκη); // εναλλακτικά η while μπορεί να τοποθετηθεί αμέσως μετά το } { μπλοκ προτάσεων; } όχι αληθής(συνθήκη); ναι τερματισμός

Βρόχος με συνθήκη εξόδου στη C, οδηγούμενος από γεγονός/μετρητή: do{}while() Εκτέλεσε τις προτάσεις Έλεγξε τη συνθήκη Εάν είναι αληθής Ξεκίνησε από την αρχή Αλλιώς σταμάτησε

Παράδειγμα: int count=30; int limit=40; do { count++; printf(“count is %d\n”,count); } while (count<limit); <επόμενη πρόταση>; /*Tο σώμα του βρόχου εκτελείται μία φορά έστω κι αν αρχικά count>=limit.*/

Ένθετοι βρόχοι (nested loops) Φώλιασμα (nesting): Τοποθέτηση ενός βρόχου μέσα σε άλλον. Ο εσωτερικός βρόχος είναι μία πρόταση μέσα στον εξωτερικό. printf(“\n”); for (i=0; i<4; i++) { for (j=0; j<3; j++) printf(“ %d.%d ”, i, j); } Αποτέλεσμα: > 0,0 0,1 0,2 1,0 1,1 1,2 2,0 2,1 2,2 3,0 3,1 3,2

Παράδειγμα: Στο πρόγραμμα που ακολουθεί δημιουργούνται ένθετοι βρόχοι, όπου χρησιμοποιούνται και τα τρία είδη προτάσεων επανάληψης: #include <stdio.h> void main() { int i,j; float x; for (i=0;i<=2;i++) { x=0.0; while( x<2) { printf( "\ni=%d x=%f",i,x ); x++; do { printf( "\nGive an integer: " ); scanf( "%d",&j ); } while (j<4); } // τέλος της while } // τέλος της for } // τέλος της main Εξωτερικός βρόχος Πρώτο επίπεδο ένθεσης Δεύτερο επίπεδο ένθεσης

Αποτελέσματα:

while==for Είναι δυνατό να μετασχηματισθεί ένας βρόχος FOR σε βρόχο WHILE; Ναι! init; while (cond) { προτάσεις; step; }; for (init; cond; step) { προτάσεις; } 