Προγραμματισμός. Κύκλους με παράμετρο. §9 Οδηγίες κύκλου με παράμετρο. Κύκλος βασισμένο σε εύρος τύπου μεταβλητών για τον ακέραιο παραμέτρων κύκλου

έκφραση1 και Β. ration2. - την αρχική και τελική τιμή της παραμέτρου του κύκλου.

Τύπος δράσης στον χειριστή του κύκλου (άμεσος λογαριασμός):

2. Η προϋπόθεση ελέγχεται: Αξία Μεταβλητής Περισσότερα τιμές έκφρασης2;

3. Εάν ναι, ο κύκλος σταματά. Εάν όχι, ο χειριστής λειτουργεί, η τιμή της μεταβλητής αυξάνεται κατά μία και στη συνέχεια η ενέργεια επαναλαμβάνεται, ξεκινώντας από την παράγραφο2.

Διαχειριστής κύκλου τύπου DOWNTO:

1. Η μεταβλητή εκχωρείται η τιμή της έκφρασης1.

2. Η κατάσταση ελέγχεται: Η τιμή της μεταβλητής είναι μικρότερη από την τιμή έκφρασης2;

3. Εάν ναι, ο κύκλος σταματά. Εάν όχι, ο χειριστής εκτελείται, η μεταβλητή τιμή μειώνεται ανά μονάδα και στη συνέχεια επαναλαμβάνεται η ενέργεια, ξεκινώντας από την παράγραφο 2.

Κανόνες:

1. Παράμετρος κύκλου Μπορεί να υπάρχει μόνο μια ολόκληρη μεταβλητή.

2. Παράμετρος κύκλου Δεν μπορεί να αλλάξει ρητά στο σώμα του κύκλου.

Για παράδειγμα:

Για i: \u003d 1 έως 10 Do

Ι: \u003d I + 1; (λανθασμένος)

3. Το βήμα κύκλου μπορεί να είναι ίσο μόνο +1 (κύκλος με) ή -1 (κύκλος με κάτω).

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

5. Ο κύκλος μπορεί να μην εκπληρωθεί ανά πάσα στιγμή.

Το έργο: Γράψτε ένα διάγραμμα μπλοκ και πρόγραμμα για να υπολογίσετε τη μέση τιμή n που καταχωρίσατε από τους αριθμούς πληκτρολογίου.

var i, n: ακέραιος? X, S: REAL.

Γράψτε ("εισάγετε τον αριθμό των αριθμών").

Για i: \u003d 1 στο n

Γράψτε ('πληκτρολογήστε τον αριθμό', i);

writeln ('μέση τιμή \u003d', s / n);

Διαχειριστής κύκλου με προϋπόθεση (ενώ)

Διαχειριστής κύκλου τροχού - Αυτός είναι ένας χειριστής κύκλου με έναν άγνωστο αριθμό επαναλήψεων.

Γενική μορφή:

Ενώ η λογική έκφραση κάνει τον χειριστή.

Λογική έκφραση - Αυτή είναι η προϋπόθεση της συνέχισης του κύκλου.

χειριστής

Δράση χειριστή:

1. Η λογική έκφραση υπολογίζεται.

2. Εάν ισχύει, ο φορέας εκμετάλλευσης εκτελείται, μετά την οποία επαναλαμβάνονται όλες οι ενέργειες, ξεκινώντας από τη ρήτρα 1,

3. Esley Μια λογική έκφραση - ψευδώς, ο κύκλος σταματά.

Κανόνες:

1. Το σώμα του κύκλου θα πρέπει να αποτελείται μόνο από έναν χειριστή αν είναι κάπως χρησιμοποιώντας έναν σύνθετο χειριστή.

2. Δεδομένου ότι η κατάσταση ελέγχεται στην αρχή του κύκλου, ο κύκλος μπορεί να μην πραγματοποιηθεί ανά πάσα στιγμή.

3. Για να είναι άπειρος ο κύκλος, οι τιμές που περιλαμβάνονται στη λογική έκφραση πρέπει να αλλάξουν στο σώμα του κύκλου.

Για παράδειγμα:

Ενώ Α.<100 do

Το έργο.Γράψτε ένα διάγραμμα μπλοκ και ένα πρόγραμμα που υπολογίζει και εμφανίζει έναν πίνακα λειτουργικών τιμών.

var x, xn, xk, y, h: πραγματικό?

writeln ("εισάγετε την αρχική, τελική τιμή x και μια αλλαγή βήμα x");

writeln ("| x | y |");

Ενώ το X.<=xk do

writeln ("|", x: 7: 2, "|", Y: 7: 2, "|");

Διαχειριστής κύκλου με ταχυδρομική ζώνη (επαναλάβετε τον κύκλο).

Επαναλάβετε τον χειριστή του κύκλου. - Αυτός είναι ένας διαχειριστής κύκλου με έναν προκαθορισμένο αριθμό επαναλήψεων.

Γενική μορφή:

φορείς εκμετάλλευσης;

Μέχρι τη λογική έκφραση.


Επαναλάβετε τον χειριστή του κύκλου:

Οι χειριστές στο σώμα του κύκλου εκτελούνται μέχρι την αξία της ψευδούς λογικής έκφρασης. Μόλις γίνει η λογική έκφραση, η εκτέλεση του χειριστή του κύκλου σταματά.

Κανόνες:

1. Το σώμα του κύκλου πραγματοποιείται πάντα τουλάχιστον μία φορά, καθώς η κατάσταση βρίσκεται στο τέλος του κύκλου.

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

Το έργο.Γράψτε ένα διάγραμμα μπλοκ και πρόγραμμα για τον υπολογισμό .

Πρόγραμμα REP_UUNT.

var n, k, s: ακέραιος?

Γράψτε ("εισάγετε k");

Γράψτε ("Σύνολο", S).

Συστοιχίες δεδομένων

Πίνακας - Αυτός είναι ένας συνδυασμός παραγγελθέντων δεδομένων που έχουν το ίδιο όνομα και τύπο και διαφορετικές μεταξύ τους (ευρετήριο). Οι συστοιχίες είναι μονοδιάστατο και πολυδιάστατο. Παραδείγματα συστοιχιών:

2 5 -15 10 20 - μια σειρά ενός ακέραιου τύπου 6 στοιχείων.

2.3 9 2.45 4.78 5.32 - Μια σειρά πραγματικού τύπου 5 στοιχείων.

Ivanov Ivan Ivanovich - μια σειρά χαρακτήρων από 20 στοιχεία.

Γενική άποψη της περιγραφής των μονοδιάστατων συστοιχιών:

Βαλτίνα Το όνομα του πίνακα: Array [η αρχική τιμή του δείκτη .. την τελική τιμή του δείκτη] του τύπου.

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

Για παράδειγμα:

var διάνυσμα: πίνακα πραγματικού?

Γενική άποψη της περιγραφής των πολυδιάστατων συστοιχιών:

vAR Array Όνομα: Array [αρχική τιμή ευρετηρίου .. Τελική τιμή δείκτη, ..., ...] του<тип>;

Για παράδειγμα:

varmatrix: Array Ofinteger; - Περιγραφή του μεγέθους μήτρας 3'5.

Πρόσβαση στα στοιχεία του πίνακα.

Μπορείτε να ανατρέξετε στα στοιχεία της συστοιχίας καθορίζοντας το όνομα και αναγράφεται σε τετράγωνα βραχίονες (σε πολυδιάστατες συστοιχίες μέσω του κόμματος) των τιμών του δείκτη του.

Ως τέτοιοι δείκτες, μπορούν να χρησιμοποιηθούν μόνο οι σταθερές τιμές.

Για παράδειγμα:

Ένα [i], b, v1, a

ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ

Έννοια βάσης δεδομένων

Αρχικά, οι υπολογιστές δημιουργήθηκαν για να λύσουν υπολογιστικά καθήκονταΩστόσο, με την πάροδο του χρόνου, έγιναν όλο και περισσότερο να χτίσουν Συστήματα επεξεργασίας εγγράφων, Ακριβώς, οι πληροφορίες που περιέχονται σε αυτές. Τέτοια συστήματα καλούνται πληροφοριακός. Τα συστήματα μπορούν να φέρονται ως παράδειγμα. Λογιστική για τον όγκο εργασίας που εκτελείται στην επιχείρηση, Υπολογισμός μισθοδοσίας, Λογιστικά προϊόντα σε απόθεμα, Λογιστικά βιβλία στη βιβλιοθήκη και τα λοιπά.

Αυτό το είδος Σύστημα πληροφορίων απαιτεί τη δημιουργία ενός υπολογιστή στη μνήμη Ενημερώθηκε δυναμικά Τα μοντέλα θεωρούνται θεματική ενότητα Χρησιμοποιώντας ένα μόνο αποθετήριο - Βάση δεδομένων (Βάση δεδομένων). Θεματική ενότητα - μέρος του πραγματικού κόσμου που θα μελετηθεί με σκοπό την οργάνωση της διοίκησης και, τελικά, αυτοματοποίηση. Τη σύνθεση του καθενός θεματική ενότητα Υπάρχει ένα σύνολο οποιουδήποτε Αντικείμενα. Ομάδες αυτών ΑντικείμεναUnited από οποιαδήποτε Ομαδοποίηση σημείουΚλήση που ονομάζεται ΑΙΘΕΡΙΑ ΕΛΑΙΑ . Για παράδειγμα, αν μιλάμε για λογιστικά προϊόντα σε μια αποθήκη, τότε μπορείτε να διαθέσετε οντότητες " προϊόν", "αγοραστής", "Κηλίδα". Τα αντικείμενα θα είναι οι ειδικοί αντιπρόσωποι τους, για παράδειγμα, ζάχαρη, Ojsc "gefest", Περίγραμμα №252..

Βάση δεδομένων - Αυτός είναι ένας συνδυασμός πληροφοριών σχετικά με την πραγματική αντικείμενα, Διεργασίες ή Πρωτοφανήςσυγγενής θεματική ενότητα, Οργανωμένη κατά τρόπο που να παρέχει μια βολική αναπαράσταση (πρόσβαση, χαρτογράφηση) αυτού του σύνολο, τόσο γενικά όσο και σε οποιοδήποτε μέρος της.

Αποθήκες πληροφοριών Β. βάση δεδομένων είναι Πινάκων , καθένα από τα οποία περιέχει πληροφορίες σχετικά με τον ίδιο τύπο αντικείμενα (Ενωμένος Ομαδοποίηση σημείου), μορφή Ουσία. Καθε γραμμή Πινάκων Περιλαμβάνει απλά δεδομένα Αντικείμενο, παράδειγμα Ουσία (π.χ, Προϊόν, Αγοραστής, πάνω από το κεφάλι), αλλά Στήλες Πινάκων περιέχουν διάφορα χαρακτηριστικά αυτών των αντικειμένων - Γνωρίσματα (π.χ, Ονόματα αγαθών, Ονόματα αγοραστών και Αριθμούς patch).

Όσον αφορά τις βάσεις δεδομένων χορδές Οι πίνακες ονομάζονται Σημειώνει , και της Στήλεςπεδία . Τα παντα Καταχωρήσεις έχουν την ίδια δομή - αποτελούνται από το ίδιο Πεδία , στην οποία αποθηκεύονται διάφορες τιμές Γνωρίσματα αντικείμενο. Ολοι Προσορισμός Περιέχει ένα χαρακτηριστικό Αντικείμενο και έχει οριστεί αυστηρά Τύπος δεδομένων(για παράδειγμα, συμβολοσειρά κειμένου, αριθμός, ημερομηνία). Όλα τα αρχεία ενός πίνακα έχουν το ίδιο πεδίο, περιέχει μόνο διαφορετικές τιμές. Γνωρίσματα.

Πριν κάνετε δεδομένα μέσα Πινάκων, Πρέπει να προσδιορίσω Δομή Αυτά τα Πινάκων. Αυτό γίνεται κατανοητό από την περιγραφή. Ονόματα και Τύποι πεδίων, καθώς και πολλά άλλα χαρακτηριστικά (για παράδειγμα, Μέγεθος πεδίου, Κριτήρια ελέγχου δεδομένων εισόδου). Παράδειγμα Ορισμός της δομής του πίνακα ο αγοραστής φαίνεται στο Σχ.8.1.

Δομή του πίνακα "αγοραστή".

Εκτός από την περιγραφή Δομές Πίνακες σε ένα μάλλον περίπλοκο βάση δεδομένων πρέπει να προσδιοριστεί ΕπικοινωνίαΜεταξύ των πινάκων. Επικοινωνία - Αυτή είναι μια ένωση που είναι εγκατεστημένη μεταξύ δύο Πινάκων. Για παράδειγμα, οι πληροφορίες πελατών στον προηγούμενο πίνακα μπορούν να συμπληρωθούν από άλλο πίνακα "διακοπές εμπορευμάτων"

Τέτοιος Βάση δεδομένων που ονομάζεται σχετικός (από Σχέση - επικοινωνία, στάση). Σχεσιακή βάση δεδομένων αντιπροσωπεύει πολλά αλληλένδετα Πινάκων, καθένα από τα οποία περιέχει πληροφορίες σχετικά με αντικείμενα συγκεκριμένο τύπο.

Δεσμούς Β. Σχεσιακές βάσεις δεδομένων καθορίζονται από την σύμπτωση των αξιών Πεδία σε διαφορετικούς πίνακες. Τα πεδία για τα οποία είναι εγκατεστημένο η σύνδεση μεταξύ των πινάκων Πεδία επικοινωνίας . Στο παραπάνω παράδειγμα πεδίο "Όνομα αγοραστή".

Ανάλογα με τον τύπο των πληροφοριών που περιέχονται στο Πινάκων Οι βάσεις δεδομένων, μεταξύ τους μπορεί να είναι τρεις κύριοι τύποι συνδέσεων: ένα σε πολλούς, ένα προς ένα, πολλοί-συν-πολλοί.

Στάση ένα σε πολλούς εγκατασταθεί μεταξύ των πινάκων όταν μια καταχώρηση στο Γονικός Κόρη Τραπέζι. Στο παραπάνω παράδειγμα, μεταξύ των πινάκων "αγοραστής" και "διακοπές των εμπορευμάτων" καθιερώνει αυτόν τον τύπο.

Στάση ένα προς ένα λαμβάνει χώρα όταν μια είσοδος στο Γονικός Ο πίνακας αντιστοιχεί σε όχι περισσότερες από μία καταχώρηση Κόρη Τραπέζι.

Σε περίπτωση σχέσης πολλοί-συν-πολλοί Μια καταχώρηση Β. Γονικός Ο πίνακας μπορεί να αντιστοιχεί σε οποιονδήποτε αριθμό καταχωρήσεων στο Κόρη Τραπέζι και αντίστροφα.

Σχετικές σχέσεις Πινάκων Αλληλεπίδραση κατ 'αρχήν το κύριο (Master) - Υποτακτικός (Λεπτομέρεια). Στο παράδειγμά μας, ο πίνακας "αγοραστή" το κύριο, και το τραπέζι "που δημοσιεύονται" Υποτακτικός. Το κύριο πράγμα Ο πίνακας ονομάζεται επίσης συχνά Γονικός, αλλά ΥφιστάμενοςΚόρη. Ιδιο τραπέζι μπορεί Το κύριο πράγμα σε σχέση με ένα Τραπέζι Βάση δεδομένων Ι. Κόρη σε σχέση με το άλλο.

Συστήματα διαχείρισης βάσεων δεδομένων (SPES). Ταξινόμηση

Να συνεργαστείτε με τα δεδομένα που χρησιμοποιούνται Συστήματα διαχείρισης βάσεων δεδομένων (DBMS). Dbms - Αυτά είναι εργαλεία λογισμικού που προορίζονται για τον προσδιορισμό των δεδομένων (περιγραφές της δομής των βάσεων δεδομένων - πίνακες, συνδέσμοι), διαχείριση επεξεργασίας και δεδομένων. Κατάλληλο - Foxpro, Oracle, SQL-Server, Delphi, DBase, Clipper, MS Access IDR.

Διακρίνονται τρεις κύριοι τύποι DBM: Βιομηχανικός καθολικός προορισμός, Βιομηχανικός ειδικός σκοπός και Που αναπτύχθηκε για έναν συγκεκριμένο πελάτη (έθιμο).

Ειδικευμένος Δημιουργήθηκε για τον έλεγχο των βάσεων δεδομένων συγκεκριμένης διορισμού - λογιστικής, αποθήκης, τραπεζικής κλπ.

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

Διαφορετικός industrialsubdzakaznaya Ο μέγιστος βαθμός λαμβάνει υπόψη τις ιδιαιτερότητες του πελάτη (μια συγκεκριμένη επιχείρηση), η διεπαφή τους είναι συνήθως διαισθητικά κατανοητά από τους χρήστες και δεν απαιτεί ειδικές γνώσεις από αυτές. Αφ 'ετέρου, ειδικευμένος και universal Emportness Revd σχετικά φθηνή, αρκετά αξιόπιστη (σφάλμα) και έτοιμη για άμεση εργασία, ενώ Προσαρμοσμένος απαιτούν σημαντικά έξοδα και η προετοιμασία τους για εργασία και εντοπισμό σφαλμάτων καταλαμβάνουν σημαντική χρονική περίοδο (από αρκετούς μήνες έως αρκετά χρόνια).

Ανάλογα με τη θέση του DBMS που διακρίνει Τοπικόςκαι Διανέμονται(Διακομιστή-πελάτη) DBMS. Ολα τα μέρη Τοπικά DBMS Δημοσιεύονται σε έναν υπολογιστή χρήστη βάσης δεδομένων. Εάν εμφανίζονται αρκετοί χρήστες σε μία βάση δεδομένων στο δίκτυο υπολογιστών ταυτόχρονα, κάθε υπολογιστή χρήστη πρέπει να έχει αντίγραφο των τοπικών DBMS. Αντίθετα, ένα σημαντικό μέρος του λογισμικού και του υλικού Κατανεμημένα DBMS Συγκεντρωμένο και είναι σε ένα αρκετά ισχυρό υπολογιστή (υπηρέτης),Ενώ οι υπολογιστές των χρηστών φέρουν ένα σχετικά μικρό μέρος του DBM που ονομάζεται πελάτης. Τοπικός Το DBMS μπορεί να λειτουργήσει στο δίκτυο, αλλά μπορεί να μην το χρησιμοποιήσει ενώ Διανέμονται Dbms φροντίστε να εργαστείτε Δίκτυο υπολογιστών.

Σημειώστε ότι η ίδια η θέση Βάση δεδομένων Δεν επηρεάζει τις ιδιαιτερότητες του DBMS: στο Τοπικός Dbms sama βάση δεδομένων Μπορεί να βρίσκεται τόσο στον υπολογιστή του χρήστη όσο και στον υπολογιστή απομακρυσμένου δικτύου (διακομιστής αρχείων).

Άνευ όρων αξιοπρέπεια Πελάτες-serversystems Είναι συγκεντρωτικό Έλεγχος πρόσβασης προς την βάση δεδομένων. Σε τέτοια συστήματα βάση δεδομένων σε μεγάλο βαθμό Προστατευμένος τόσο από τυχαίες όσο και από σκόπιμες στρεβλώσεις, είναι ευκολότερο να εφαρμοστεί ακεραιότητα και Συνέπεια των δεδομένων.

Το DBMS είναι ένα βασικό στοιχείο. σύστημα πληροφορίων. Για να δημιουργήσετε και να διαχειριστείτε σύστημα πληροφορίων Το DBMS απαιτείται στον ίδιο βαθμό όπως απαιτείται Μεταφράστης Για ανάπτυξη προγράμματα στο Αλγοριθμική γλώσσα.

Οι κύριες λειτουργίες που εκτελούνται από το DBMS:

Διαχείριση δεδομένων στο εξωτερική μνήμη (σε δίσκους).

Διαχείριση δεδομένων Β. μνήμη τυχαίας προσπέλασης;

- Προγραμματισμός Αλλαγή Ι. Ανάκτηση δεδομένων Μετά από αποτυχίες.

Διατήρηση γλωσσών βάσεις δεδομένων (Γλώσσα ορισμός δεδομένων - Γλώσσα SDL, Γλώσσα χειρισμού δεδομένων - Γλώσσα DML ή μια ενιαία ολοκληρωμένη γλώσσα που περιέχει όλες τις απαραίτητες βάσεις δεδομένων στην εργασία - γλώσσα των δομημένων ερωτημάτων SQL).

Σε γενικές γραμμές, σήμερα θα μάθουμε για κάθε ένα από τα κύκλους στο Pascal λεπτομερέστερα και να δούμε πώς έχουν οριστεί. Θα αποσυναρμολογήσουμε Ενώ ο κύκλος με προϋπόθεση, Για παράμετρο και Επανάληψη του κύκλου - μέχρι με την ταχυδρομική ζώνη.

1. Κύκλος με παράμετρο στο Pascal - για

Ο κύκλος ορίζει μια συγκεκριμένη κατάσταση για την οποία το πρόγραμμα θα λειτουργήσει πριν εκτελεστεί, πρέπει να μας επιτρέψουμε να χαλαρώσουμε το πρόγραμμα, τότε είναι εύκολο να γίνει με αυτόν τον κύκλο. Ο κύκλος έχει ένα χαρακτηριστικό χαρακτηριστικό - ένας μετρητής που συνήθως δηλώνεται από το γράμμα I ή J.

Η εμφάνιση του κύκλου με την παράμετρο στο Pascal:

Για i: \u003d 1 έως n do // αναθέτουμε πρώτο πρώτο, τότε δύο, τρία, ..., n

Μετά το 1ο πέρασμα της μεταβλητής I, αναθέτουμε 1, μετά το δεύτερο εκχωρούμε 2 και έτσι μέχρι να μην φτάσουμε στο n. Να είναι πριν .. σε αύξουσα σειρά, υπάρχει επίσης downto - πριν .. κατά φθίνουσα σειρά.

Κύκλωμα κύκλου μπλοκ με παράμετρο:

2. Κύκλος με την επεξεργασία στο Pascal - ενώ

Ο φορέας εκμετάλλευσης του κύκλου με την προϋπόθεση εκτελεί τις ενέργειες πριν από τον άγνωστο αριθμό. Η έξοδος από τον κύκλο πραγματοποιείται εάν κάποια λογική έκφραση ή το αποτέλεσμα του θα είναι ψευδές. Δεδομένου ότι η πίστη της λογικής έκφρασης ελέγχεται στην αρχή, το σώμα του κύκλου ενδέχεται να μην εκπληρωθεί.

Δομή κύκλου με προϋπόθεση:

Ενώ αρχίζουν το τέλος.

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

Τους φορείς εκμετάλλευσης γλωσσών.

Η διαδικασία εκτέλεσης ενός κύκλου:

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

Κύκλωμα κύκλου μπλοκ με προϋπόθεση:


Σημείωση: Σε ορθογώνια μπλοκ, οποιαδήποτε ενέργεια εμφανίζεται στον κύκλο ή μετά από αυτό (βήμα κύκλου), στο ωοειδές - την αρχή ή το άκρο ολόκληρου του προγράμματος ή το κομμάτι του. Ο κύριος ρόλος σε αυτό το μπλοκ - το σύστημα διαδραματίζει το κεντρικό του μέρος.

Παράδειγμα:

Εργασία: Υπολογίστε το άθροισμα της σειράς 1 + 1.5 + 2 + 2.5 + 3 + 3.5 +. + 30

Παράδειγμα προγράμματος-ενώ;

Var sum: πραγματικό? N: πραγματικό? Ξεκινήστε το άθροισμα: \u003d 0; n: \u003d 1; Ενώ Ν.

3. Κύκλος με μετά την επανάληψη - μέχρι.

Αυτός ο φορέας εκμετάλλευσης είναι παρόμοιος με τον χειριστή του κύκλου με την προϋπόθεση, αλλά διαφέρει από αυτό στο γεγονός ότι οι συνθήκες επικύρωσης γίνονται μετά το σώμα (δράσεις) του κύκλου. Αυτό εξασφαλίζει την εκτέλεση τουλάχιστον μία φορά σε αντίθεση με τους προηγούμενους αποσυναρμολογημένους κύκλους.

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

Η ακολουθία των χειριστών που περιλαμβάνονται στο σώμα του κύκλου εκτελείται μία φορά, μετά την οποία ελέγχεται η κατάσταση ακολουθούμενη από τη λέξη της υπηρεσίας. Εάν η κατάσταση δεν τηρηθεί, ο κύκλος ολοκληρώνεται. Διαφορετικά, το σώμα του κύκλου επαναλαμβάνεται και πάλι, μετά το οποίο ελέγχεται ξανά η κατάσταση.

Σχέδιο κύκλου μπλοκ με ταχυδρομική ζώνη:

Μορφή εγγραφής, δομή κύκλου:
Επαναλάβετε μέχρι.

Παράδειγμα:

Δοκιμή προγράμματος2; Var b: πραγματικό? Ξεκινήστε b: \u003d 100; Επαναλάβετε το B: \u003d B / 2; Μέχρι B.

Συμπεράσματα:

1. Το Cylcon με μια παράμετρο χρησιμοποιείται από μια μεταβλητή που ονομάζεται παράμετρος κύκλου ή μετρητή. Πριν εκτελέσετε τον κύκλο, η αρχική τιμή έχει οριστεί στην παράμετρο. Μετά την ολοκλήρωση του βήματος του κύκλου, η τιμή παραμέτρου αυξάνεται κατά ένα. Ο κύκλος συνεχίζεται μέχρις ότου η παράμετρος φτάσει στην τελική τιμή, η οποία υποδεικνύεται μετά από (downto).

2. Ο κύκλος με την προϋπόθεση εκτελείται μέχρις ότου η κατάσταση εκτέλεσης γίνει ψευδής και συνεχίζεται εάν η κατάσταση είναι αληθής.

3. Ο κύκλος με τη θέση εκτελείται μέχρις ότου η κατάσταση γίνει αληθινή εάν η κατάσταση είναι ψευδής, ο κύκλος συνεχίζεται.

Τα περισσότερα προγράμματα έχουν την ανάγκη να επαναλάβουν κάποιο χειριστή (ή μπλοκ χειριστή). Για την οργάνωση τέτοιων δομών, μπορούν να χρησιμοποιηθούν χειριστές κύκλου. Στη γλώσσα προγραμματισμού, η Pascal χρησιμοποιεί τους ακόλουθους τύπους χειριστών κύκλων: για, ενώ, ενώ επαναλαμβάνεται (στο Pascalabc.net, χρησιμοποιείται επίσης ο φορέας εκμετάλλευσης του κύκλου foreach).

Ένα μπλοκ φορέων που θα εκτελεστούν επανειλημμένα ονομάζεται σώμα κύκλου.

Χειριστή για pascal

Αν ένα Αριθμός επαναλήψεων του σώματος Ο κύκλος είναι γνωστός εκ των προτέρων, χρησιμοποιείται Ο χειριστής κύκλου για, Η οποία συχνά αναφέρεται ως ο χειριστής του κύκλου με την παράμετρο.

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

Ανάλογα με την κατεύθυνση της αλλαγής της παραμέτρου του κύκλου (αύξηση - ή μείωσης - κάτω) στη γλώσσα Pascal, ο χειριστής του κύκλου μπορεί να καταγραφεί σε μία από τις δύο μορφές:

  • Για παράμετρο: \u003d nach_named στο kon_path κάνει
  • χειριστής;
  • Για παράμετρο: \u003d nach_please downto kon_prow κάνει
  • χειριστής;

Η μεταβλητή κύκλου μπορεί να πάρει οποιοδήποτε τύπο αλληλουχίας. Στην περίπτωση αυτή, οι αρχικές και τελικές τιμές πρέπει να είναι συμβατές με τη μεταβλητή-παράμετρο τύπου.

Εξετάστε το έργο του κύκλου.

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

  1. Η τρέχουσα τιμή της παραμέτρου με την τελική τιμή συγκρίνεται.
  2. Εάν η κατάσταση είναι αλήθεια, το σώμα του κύκλου εκτελείται, διαφορετικά το τερματισμό και ο έλεγχος του ελέγχου διαβιβάζεται στον χειριστή ως εξής ο κύκλος.

Προσοχή: Στη γλώσσα Pascal, η παράμετρος του κύκλου, ανεξάρτητα από την αύξηση ή τη μείωση, αλλάζει κάθε φορά ανά μονάδα.

Μια εργασία. Εμφανίστε τη λίστα τετραγώνων ακεραίων από 10 έως 1.

Απόφαση. Στην εργασία, η παράμετρος του κύκλου μειώνεται.

(Τμήμα του κωδικού προγράμματος)

  • Για i: \u003d 10 Downto 1 Do
  • writeln (Ι: 2, "", i * i);

ΠΡΟΣΟΧΗ: Εάν στο σώμα του κύκλου πρέπει να χρησιμοποιήσετε περισσότερους από έναν χειριστές, τότε χρησιμοποιείται ο σύνθετος χειριστής (αρχίστε και τερματισμό του χειριστή).

Παράδειγμα 2. Οι εκτιμήσεις του αιτούντος σε τέσσερις εξετάσεις είναι γνωστές. Καθορίστε το ποσό των σημείων που σημειώθηκαν από αυτά.

Μια εργασία. Οι εκτιμήσεις του αιτούντος σε τέσσερις εξετάσεις είναι γνωστές. Καθορίστε το ποσό των σημείων που σημειώθηκαν από αυτά.

Απόφαση. Θα χρησιμοποιήσουμε έναν φορέα εκμετάλλευσης κύκλου στο πρόγραμμα με τις παραμέτρους, δεδομένου ότι ο αριθμός των επαναλήψεων των ενεργειών που εκτελούνται (ο αιτών έλαβε ακριβώς τέσσερα σημάδια)

(Τμήμα του κωδικού προγράμματος)

  • s: \u003d 0;
  • Για i: \u003d 1 έως 4 κάνετε
  • Να αρχίσει.
  • readln (σημάδι);
  • s: \u003d S + Mark;
  • writeln (s);

Οι οδηγίες για τον κύκλο εφαρμόζουν τη αλγοριθμική δομή Κύκλος με παράμετρο (ή κύκλος με μετρητή). Ο κύκλος χρησιμοποιείται στην περίπτωση που το πρόγραμμα, πριν εκτελέσει τις οδηγίες του κύκλου, γίνεται γνωστή (ή ορίζεται εκ των προτέρων) τον αριθμό των βημάτων αυτού του κύκλου. Στο διάγραμμα μπλοκ, η οδηγία απεικονίζεται ως εξής:

Σύνταξη:

Για ( αρχικοποίηση; κατάσταση; τροποποίηση) (Οδηγίες του σώματος του κύκλου ·)

Εάν υπάρχει μια εντολή στο σώμα του κύκλου, τότε () μπορεί να παραλειφθεί. Ο κύκλος μεταβλητής παραμέτρου (μετρητής) μπορεί να είναι οποιοσδήποτε αριθμητικός τύπος. Αυτό καθιστά τον κύκλο C ++ ως Universal ως κύκλος τύπου. Στην ενότητα τροποποίησης, η συχνότητα αύξησης του Postfix ή του Προθέματος (ή μείωση (ή μείωση) χρησιμοποιείται συχνότερα, αλλά μπορεί να χρησιμοποιηθεί οποιαδήποτε έκφραση ανάθεσης που αλλάζει την τιμή της παραμέτρου του κύκλου. Ο κύκλος λειτουργεί ως εξής:

  • Στην αρχή υπάρχει μια περιγραφή και αρχικοποίηση του μετρητή
  • Επόμενο Ελέγξτε τις συνθήκες: Εάν η έκφραση έχει σημασία Αληθής., θα συμβεί επανάληψη
  • Μετά την εκτέλεση των οδηγιών του σώματος του κύκλου, τροποποιείται μια τροποποίηση του μετρητή

Σημείωση: Το C ++ είναι ένας κανόνας για να κάνετε μια περιγραφή του μετρητή του μετρητή στον κύκλο κεφαλίδας. Αλλά αυτό δεν είναι απαραίτητα, ειδικά αν προγραμματίζετε να αρχίσετε αρκετές μεταβλητές στο τμήμα αρχικοποίησης, όπως εφαρμόζεται στο πρόγραμμα 9.2. Ωστόσο, η χρήση της περιγραφής του μεταβλητού μετρητή στην κεφαλίδα του κύκλου οδηγεί σε μια περιγραφή μιας τοπικής μεταβλητής καταστράφηκε αυτόματα μετά την ολοκλήρωση της λειτουργίας του κύκλου. Επομένως, χωρίς ακραία ανάγκη, η περιγραφή του μεταβλητού μετρητή δεν είναι απαραίτητη για την παραγωγή.
Στη διαδικασία λειτουργίας, ο κύκλος δεν συνιστάται να αλλάζει τους τελεστές στις εκφράσεις της κεφαλίδας κύκλου - αυτό θα οδηγήσει σε διαφορετικά είδη σφαλμάτων! Αλλά οι τιμές των μεταβλητών (ή σταθερών), συμπεριλαμβανομένων των μεταβλητών τιμών (μετρητή), μπορούν να χρησιμοποιηθούν. Εξετάστε ένα κλασικό παράδειγμα.

Πρόγραμμα 9.1. Ο φυσικός αριθμός N δίδεται. Για να αποσύρετε όλους τους διαιρέτες αυτού του αριθμού.

#Περιλαμβάνω. << "N = "; cin >\u003e N; για (int i \u003d 2, i< N / 2; i++) { if (N % i == 0) cout << i << " "; } return 0; } N = 16000 2 4 5 8 10 16 20 25 32 40 50 64 80 100 125 128 160 200 250 320 400 500 640 800 1000 1600 2000 3200 4000

Χρησιμοποιώντας τις οδηγίες συνεχίστε για τον κύκλο

Όταν χρησιμοποιείτε τις συνεχιζόμενες οδηγίες στον κύκλο, είναι απαραίτητο να λάβετε υπόψη τα χαρακτηριστικά του έργου αυτού του κύκλου:

  • Θα χαθούν οι οδηγίες που ακολουθούν
  • Τότε υπάρχει μια τροποποίηση του μετρητή
  • Μετάβαση στην επόμενη επένδυση (διαφορετικά, οι συνθήκες επικύρωσης)

Δείξτε το στο παράδειγμα: int main () (για (int i \u003d 1; i< 20; i++) { if (i % 2 == 0) continue; cout << i << " "; } 1 3 5 7 9 11 13 15 17 19

Σημείωση. Σημείωση: Αν και χάσει η έξοδος των αριθμών από την κατάσταση, αλλά εκτελείται η αύξηση του μετρητή. Αυτό το παράδειγμα είναι μόνο για την απεικόνιση, ο προγραμματισμός του κύκλου δεν ακολουθεί έτσι! Αυτό το έργο είναι καλύτερο να λύσει ως εξής:

Int main () (για (int i \u003d 1, i< 20; i += 2) cout << i << " ";

Διάφορες εκφράσεις στην ενότητα Αρχικοποίηση και τροποποίηση

Όπως ήδη παρατηρήσαμε νωρίτερα στην επικεφαλίδα της διδασκαλίας πρέπει να είναι τρία τμήματα. Οι εκφράσεις σε αυτές τις ενότητες μπορούν να μειωθούν, αλλά δεν μπορούν να παραλειφθούν. "" . Στο τέλος, μπορείτε να φύγετε μόνο. . Τίτλος στη φόρμα:

Για (;;) (...)

Είναι ο τίτλος "Ατελείωτος" κύκλος. (Η έξοδος από τον κύκλο πρέπει να προγραμματιστεί μέσα στο σώμα του κύκλου).
Το C ++ υποστηρίζει πολλαπλές εκφράσεις στις ενότητες αρχικοποίησης και τροποποίησης στην κεφαλίδα κεφαλίδας. Ταυτόχρονα, η συνέχιση της κατάστασης του κύκλου πρέπει να είναι ένα!
Για παράδειγμα. Δήλωση προβλημάτων: Υπολογίστε το συγκεκριμένο αριθμό που δεν υπερβαίνει τα 20.
Πρόγραμμα 9.2.

#Περιλαμβάνω. Χρησιμοποιώντας το Namespace STD. Int main () (μη υπογραφεί μακρύ μακρύς n, int i, k, cout<< "k = "; cin >\u003e k; // 0.<= k <= 20 for(n = 1, i = 1; i <= k; n *= i, ++i); cout << k << "! = " << n << endl; return 0; } k = 20 20! = 2432902008176640000

Σημείωση: Παρακαλείστε να σημειώσετε ότι το ρεύμα εξόδου στη γραμμή 12 δεν ισχύει για το σώμα του κύκλου! (Στο τέλος του τίτλου -). Έτσι, αυτός ο κύκλος στο σώμα έχει κενή εντολή και όλες οι εκφράσεις υπολογίζονται στον τίτλο. Το πρόγραμμα 9.2 υπολογίζει σωστά το συγκεκριμένο αριθμό από το 0 έως 20.

Ανάλογα με τη μορφή

Για τη βίαιη δύναμη ενός συστοιχιού ή στοιχείων εμπορευματοκιβωτίων, πρέπει να εκτελέσετε τον ίδιο τύπο, ενώ χρησιμοποιείτε έναν ογκώδη κώδικα. Για να απλοποιηθεί η εργασία με δοχεία στο C ++, υπάρχει μια ειδική μορφή του κύκλου που βασίζεται σε εύρους. Για μια περιοχή που βασίζεται στην περιοχή ή ζώνη για).
Σύνταξη:

Για ( Ενα δ : Όνομα υποδοχής) Loop_Statement.

Χρησιμοποιώντας το εύρος που βασίζεται στο παράδειγμα του πίνακα C:
Πρόγραμμα 9.3.

#Περιλαμβάνω. Χρησιμοποιώντας το Namespace STD. Int main () (int x (1, 2, 3, 4, 5, 6, 7, 8, 9, 10). Για (auto & s: x) (Cout<< s << " "; } return 0; }

Έτσι ώστε τα στοιχεία της συστοιχίας να μπορούν να αλλάξουν - η μεταβλητή S πρέπει να είναι μια μεταβλητή αναφοράς (όπως στο παραπάνω παράδειγμα). Εάν η μεταβλητή δεν είναι αναφορά, τότε τα δεδομένα θα αντιγραφούν. Για να αφαιρέσετε αυτόματα τον τύπο αυτού του κύκλου, χρησιμοποιείται ο πίνακας αυτόματης προδιαγραφής. Η ανάλυση της κλίμακας έχει περιορισμούς στην εργασία με δυναμικές συστοιχίες: Δεν υποστηρίζει την αλλαγή μεγέθους του πίνακα, καθώς περιέχει ένα σταθερό δείκτη τελικού συστοιχιού. Όταν εργάζεστε με συστοιχίες που έχουν σταθερό μέγεθος, το εύρος είναι μια εξαιρετική και ασφαλής εναλλακτική λύση στο συνηθισμένο για.

Εμφανισμένοι κύκλοι για

Ακριβώς όπως και άλλες οδηγίες κύκλων, επειδή υποστηρίζει τη δομή των φωτεινών κύκλων. Η χρήση φωλιασμένων για κύκλους για την οργάνωση μιας εισόδου και εξόδου δισδιάστατων συστοιχιών φαίνεται πολύ πιο συμπαγής από ό, τι όταν χρησιμοποιείτε τον κύκλο κατά το οποίο.
Ωστόσο, κατά την επίλυση τέτοιων συστοιχιών, επιλύοντας τέτοιες συστοιχίες, είναι απαραίτητο να αποφευχθεί η εφαρμογή της υπό όρους εντολή εάν. Συχνά, η εργασία μπορεί να εφαρμοστεί πιο ορθολογικά, με χειρισμό ευρετηρίων (μεταβλητές κύκλου Ι και J). Δηλαδή, για να προσθέσετε στην αλλαγή της αλλαγής ενός δείκτη, από την τιμή του άλλου. Εξετάστε δύο παραδείγματα.
Πρόγραμμα 9.4. Μία τετράγωνη μήτρα Ν, τα στοιχεία των οποίων είναι 0. Γεμίστε τα αντικείμενα που υποβάλλονται και στις σημαντικότερες διαγώνιες μονάδες.

#Περιλαμβάνω. Χρησιμοποιώντας το Namespace STD. Int main () (int n; cout<< "n = "; cin >\u003e n; Int mas [n] [n]; // συμπληρώστε με μηδενικά για (int i \u003d 0; i< n; i++) for(int j = 0; j < n; j++) mas[i][j] = 0; // Реализация for(int i = 0; i < n; i++) for(int j = 0; j <= i; j++) mas[i][j] = 1; // Вывод for(int i = 0; i < n; i++) { for(int j = 0; j < n; j++) { cout.width(2); cout << mas[i][j]; } cout << "\n"; } return 0; } n = 10 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1

Πρόγραμμα 9.5. Δημιουργήστε ένα πρόγραμμα για να γεμίσετε τη συστοιχία από τους αριθμούς του τριγώνου του Pascal και την απόσυρση αυτής της συστοιχίας. Το τρίγωνο του Pascal έχει τη μορφή:


Σε αυτό το τρίγωνο στην κορυφή και στις πλευρές, υπάρχουν μονάδες (στο πρόγραμμα 9.5, το τρίγωνο "τοποθετείται στο πλάι" - η πλευρά του τριγώνου: η πρώτη στήλη και η κύρια διαγώνια). Κάθε αριθμός είναι ίσος με το άθροισμα των δύο αριθμών πάνω από αυτό. Οι σειρές του τριγώνου είναι συμμετρικές σε σχέση με τον κατακόρυφο άξονα και περιέχουν συντελεστές διείμιων.

#Περιλαμβάνω. Χρησιμοποιώντας το Namespace STD. Int main () (int n; cout<< "n = "; cin >\u003e n; Int pas [n] [n]; για (int i \u003d 0; i< n; i++) for (int j = 0; j < n; j++) pas[i][j] = 0; pas = 1; for (int i = 1; i < n; i++) { pas[i] = 1; for (int j = 1; j <= i; j++) { pas[i][j] = pas + pas[j]; } } for (int i = 0; i < n; i++) { for (int j = 0; j <= i; j++) { cout.width(4); cout << pas[i][j]; } cout << "\n"; } return 0; } n = 12 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1 1 10 45 120 210 252 210 120 45 10 1 1 11 55 165 330 462 462 330 165 55 11 1

Ερωτήματα
  1. Θα μπορούσε να αντικατασταθεί στο πρόγραμμα για τη διδασκαλία του κύκλου κατά τη διδασκαλία του κύκλου; Είναι πάντα δυνατό να το κάνετε αυτό;
  2. Πότε είναι πιο βολικό να υποβάλετε αίτηση για την οργάνωση των κύκλων, τις οδηγίες για οδηγίες; Ενώ?
  3. Είτε η κεφαλίδα για τις οδηγίες για τις ακόλουθες εκφράσεις είναι δυνατή στην κεφαλίδα: α) για (a\u003e b &&! (A% 2),) β) για (a\u003e b;) γ) για (;; i \u003d 0 ) δ) για (· i \u003d 0 ·) ε) για (· · I ++, --B) F) για (--i · ·) g) για (b \u003d 0 · b! \u003d a);
  4. Η μεταβλητή Ι είναι η παράμετρος της εξωτερικής κύκλου, και J - επενδύσει. Θα υπάρξει μια μεταβλητή J σε έναν εξωτερικό κύκλο; Εγώ στον επενδυμένο κύκλο;
Εγχειρίδιο
εργασία για το σπίτι
  1. Πίσω 29. Γράψτε το πρόγραμμα στο οποίο εισάγονται οι φυσικοί αριθμοί ΕΝΑ. και ΣΙ.και η οθόνη δείχνει όλους τους απλούς αριθμούς στην περιοχή από ΕΝΑ. πριν ΣΙ. (Η ιδέα του προγράμματος αλγορίθμου 8.5)
  2. Πίσω 30. Τέλεια είναι ο αριθμός ισούται με το άθροισμα όλων των διαιρέτες του μικρότερο από αυτό (για παράδειγμα, ο αριθμός 6 \u003d 1 + 2 + 3). Γράψτε ένα πρόγραμμα που εισέρχεται στον φυσικό αριθμό N και καθορίζει αν ο αριθμός n είναι τέλειος.
  3. Γράψτε ένα πρόγραμμα που εμφανίζει ένα τετράγωνο αριθμητικό μέγεθος πίνακα του μεγέθους Ν χ Ν, που έχει την ακόλουθη μορφή σε η \u003d 10: 1 * * * * * * * * * * * * * * * * * * * * * 3 * * * * * * * * * * * 4 * * * * * * * * * * 5 * * * * * * * * * * * * * * * * * * * * 7 * * * * * * * * * * 8 * * * * * * * * * * 9 * * * * * * * * * 10
Βιβλιογραφία
  1. Laphore R. Αντικειμενοστρεφής προγραμματισμός σε C ++ (4η έκδ.). Πέτρος: 2004.
  2. Prath, Stephen. C ++ γλώσσα προγραμματισμού. Διαλέξεις και ασκήσεις, 6η έκδοση: ανά. από τα Αγγλικά - Μ.: LLC "I.D. William, 2012
  3. Lippman Β Stanley, Josi Lazhoye, Barbara E. Mu. C ++ γλώσσα προγραμματισμού. Βασικό μάθημα. Ed. 5η. Μ: LLC "Ι. Δ. Williams ", 2014
  4. Elline A. C ++. Από το Lamera στον προγραμματιστή. Αγία Πετρούπολη: Πέτρος, 2015
  5. Schildt G. C ++: Βασικό μάθημα, 3-Ed. M.: Williams, 2010



Ο κύκλος με την παράμετρος έχει την ακόλουθη μορφή:

Για (αρχικοποίηση, έκφραση, τροποποιήσεις) χειριστή;

ΑρχικοποίησηΧρησιμοποιείται για να δηλώσει και να αναθέσει αρχικές τιμές των τιμών που χρησιμοποιούνται στον κύκλο. Σε αυτό το μέρος, μπορείτε να γράψετε πολλούς φορείς που χωρίζονται από ένα κόμμα (λειτουργία «Διαδοχική εκτέλεση»), για παράδειγμα, ως εξής:

Για (int i \u003d 0, j \u003d 2; ...

Για (k \u003d 1, m \u003d 0, ...

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

ΕκφρασηΚαθορίζει την προϋπόθεση εκτέλεσης του κύκλου: εάν το αποτέλεσμα του που δίδεται στο BOOL τύπου είναι αληθές, ο κύκλος εκτελείται. Ο κύκλος με την παράμετρο υλοποιείται ως ένας κύκλος με την προϋπόθεση.

ΤροποποιήσειςΠραγματοποιήθηκε μετά από κάθε επανάληψη του κύκλου και συνήθως χρησιμεύει για να αλλάξει τις παραμέτρους του κύκλου. Όσον αφορά τις τροποποιήσεις, μπορείτε να γράψετε αρκετούς χειριστές μέσω του κόμματος. Απλό ή σύνθετο χειριστήςΕίναι το σώμα του κύκλου. Οποιοδήποτε από τα μέρη του χειριστή ΓΙΑ μπορούν να παραλειφθούν (αλλά τα σημεία με ένα κόμμα πρέπει να μείνει στις θέσεις τους!).

Παράδειγμα (χειριστής, υπολογίζοντας το άθροισμα των αριθμών από 1 έως 100):

για (int i \u003d 1, s \u003d 0, 1<=100; i++) s += i;

Παράδειγμα (Το πρόγραμμα εκτυπώνει τον πίνακα των τιμών λειτουργίας y \u003d x 2 +1Στην εισαγωγική περιοχή):

#Περιλαμβάνω.

float xn, xk, dx, x;

pRINTF ("Εισάγετε το εύρος και το βήμα της αλλαγής του επιχειρήματος:");

scanf ( "% στ% f% f", & xn, & xk, & dx)?

printf ("| x | y | \\ n");

για (x \u003d xn; x<=Xk; X+=Dx)

printf ( "|% 5.2F \u200b\u200b|% 5.2F \u200b\u200b| \\ n", x * x + 1)?

Παράδειγμα (Το πρόγραμμα βρίσκει όλους τους διαιρέτες ενός ολόκληρου θετικού αριθμού):

#Περιλαμβάνω. Int main () (

Int num, μισό, div;

cout.<< “\n Введите число: "; cin >\u003e Num;

Για (μισό \u003d num / 2, div \u003d 2; div<= half; div++)

Εάν (! (num% div)) cout<< div <<"\n";

Τα τελευταία δύο παραδείγματα εκτελούν τις ίδιες ενέργειες με τα παραδείγματα για τον κύκλο με την προϋπόθεση, αλλά καταγράφονται περισσότερο συμπαγές και οπτικά: όλες οι ενέργειες που σχετίζονται με τον έλεγχο του κύκλου εντοπίζονται στην κεφαλίδα του.

Κάθε φορά που ο κύκλος μπορεί να αποδειχθεί στον κύκλο που ισοδυναμεί με αυτό και αντίστροφα στο ακόλουθο σχήμα:

Για το (B1: B2, BZ) φορέα B1.

Ενώ (b2) (χειριστής, bz;)

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

q Ελέγξτε εάν όλες οι μεταβλητές που εμφανίζονται στη δεξιά πλευρά των χειριστών αντιστοίχισης στο σώμα του κύκλου αντιστοιχίζονται σε αυτές τις αρχικές τιμές (και εάν εκτελέσετε άλλους φορείς εκμετάλλευσης).


q Ελέγξτε εάν αλλάξει τουλάχιστον μία μεταβλητή στον κύκλο, ο οποίος είναι υπό την προϋπόθεση από τον κύκλο.

q Παροχή εξόδου έκτακτης ανάγκης από τον κύκλο για να επιτευχθεί ένας ορισμένος αριθμός επαναλήψεων.

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

Οι φορείς εκμετάλλευσης κύκλου είναι εναλλάξιμοι, αλλά μερικοί μπορούν να οδηγήσουν μερικά ΣυστάσειςΣχετικά με την επιλογή του καλύτερου σε κάθε περίπτωση.

Η δήλωση που χρησιμοποιείται συνήθως χρησιμοποιείται όταν ο κύκλος απαιτείται να πραγματοποιηθεί τουλάχιστον μία φορά (για παράδειγμα, εάν τα δεδομένα εισάγονται στον κύκλο).

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

Ο φορέας εκμετάλλευσης προτιμάται στις περισσότερες άλλες περιπτώσεις (μοναδικά - να οργανώσουν τους κύκλους με μετρητές).

Συνεχίζοντας το θέμα:
Λειτουργός

Έχω μια υπηρεσία Web που εγγράφηκα μέσω "Προσθέστε έναν σύνδεσμο στην υπηρεσία" για την οποία απαιτείται https και πιστοποιητικό. Παρακάτω είναι ο κώδικας μου για τη δημιουργία μιας στιγμής ...

Νέα άρθρα
/
Δημοφιλής