Οι κύκλοι παίρνουν μια ξεχωριστή θέση στο Turbo Pascal.Αρχίζουν να μελετούν αμέσως μετά την εξάσκηση των δεξιοτήτων εισόδου-εξόδου πληροφοριών στην οθόνη. Σε τελική ανάλυση, οι περισσότερες εργασίες απορρέουν από το γεγονός ότι οι βρόχοι με μια παράμετρο και άλλες κατασκευές βοηθούν στη διευκόλυνση της γραφής και της λειτουργίας ενός συγκεκριμένου μπλοκ του προγράμματος.
Ποικιλίες κύκλων
Συνολικά, υπάρχουν τρεις τύποι:
- με μια παράμετρο,
- με προϋπόθεση,
- με μετα-κατάσταση.
Βρόχους με παράμετρο, αλλιώς καλούνται Για ... έως ...κάνω ή Για… μέχρι…. Κάντε, επαναλάβετε μια συγκεκριμένη σειρά ενεργειών πολλές φορές. Κατ 'αρχήν, άλλες ποικιλίες χρησιμοποιούνται για τον ίδιο σκοπό, μόνο ο αριθμός των βημάτων είναι γνωστός εκ των προτέρων στο for-loop.
Στις άλλες δύο κατασκευές (While και Repeat), ο αριθμός των επαναλήψεων είναι αρχικά άγνωστος. Επομένως, όταν μελετάτε την εργασία, είναι ήδη απαραίτητο να κατανοήσετε ποιος κύκλος θα χρησιμοποιηθεί.
Βασικοί ορισμοί για το θέμα
Βρόχοι με παραμέτρους - επαναλαμβανόμενεςεπαναλήψεις Ο μετρητής είναι ο κύριος δείκτης με τον οποίο εκτελείται ένα δεδομένο σχέδιο. Τα όρια του διαστήματος δείχνουν τα όρια εντός των οποίων θα πραγματοποιηθούν ορισμένες επαναλήψεις. Παρεμπιπτόντως, δεν είναι καθόλου απαραίτητο η αρχική τιμή να είναι ίση με 1. Ο χρήστης ορίζει ανεξάρτητα και τα δύο όρια του διαστήματος. Το σώμα του βρόχου είναι ένα σύνολο εντολών για τις οποίες έχει ήδη καθοριστεί ο αριθμός των επαναλήψεων.
Ο όρος "βρόχοι με παραμέτρους" σημαίνει ότι στοαυτής της κατασκευής, ελέγχεται η κατάσταση, μετά την οποία πραγματοποιείται ένα σύνολο επαναλήψεων. Ο μετρητής αυξάνεται (ή μειώνεται) και όλα επαναλαμβάνονται. Το σώμα του βρόχου θα χρησιμοποιηθεί εφόσον ισχύει η κατάσταση.
Για τον αλγόριθμο… to… do: work, syntax
Όπως ήδη αναφέρθηκε, οι βρόχοι με μια παράμετρο χρησιμοποιούνται σε εργασίες που καθορίζουν το "διάστημα" στο οποίο θα λειτουργήσει. Έτσι, μπορεί να είναι μια σειρά από αριθμούς, ημέρες της εβδομάδας, γραμμές ενός ποιήματος κ.λπ.
Υπάρχουν 2 τύποι κατασκευής: για να αυξήσετε τον μετρητή και να τον μειώσετε. Η πρώτη κατασκευή θα γραφτεί ως εξής:
Για έξω. μεταβλητή : = σύνορα 1 προς το σύνορα 2 κάνω
αρχίσουν
σώμα βρόχου.
τέλος;
Εδώ: αναφ. μεταβλητός δηλώνεται από τον χρήστη στην αρχή ενός προγράμματος ή μπλοκ · σύνορα 1 και σύνορα 2 - την αρχική και τελική τιμή του διαστήματος · στο σώμα κύκλος προβλέπονται ορισμένες ενέργειες που θα έπρεπετρέχει από το πρόγραμμα. Θα πρέπει να θυμόμαστε ότι εάν το σώμα του βρόχου περιέχει μόνο 1 εντολή, τότε οι αγκύλες χειριστή ξεκινούν… το τέλος μπορεί να παραλειφθεί. Σε αυτήν την έκδοση του σχεδιασμού, ο μετρητής, δηλαδή <init.variable>, θα αυξηθεί με ένα βήμα ίσο με 1.
Για έξω. μεταβλητή : = σύνορα 1 μέχρι σύνορα 2 κάνω
αρχίσουν
σώμα βρόχου.
τέλος;
Εδώ αναφ. η μεταβλητή θα μειωθεί σε βήματα του 1.
Η λειτουργία βρόχου με την παράμετρο For ... to ... do θα έχει την εξής μορφή:
- Η τιμή του άνω ορίου του κενού ορίζεται, δηλ. σύνορα 2.
- Μεταβλητή πηγής εκχωρείται η τιμή παραμέτρου σύνορα 1.
- Η κατάσταση ελέγχεται: μεταβλητή αναφοράς ≤ όριο 2.
- Κατά τη λήψη του αποτελέσματος Αληθής (Αληθήςεκτελείται το σώμα του βρόχου.
- Ο μετρητής αυξάνεται κατά 1.
- Τα στοιχεία 3-5 εκτελούνται ακριβώς μέχρι να ισχύει η συνθήκη: μεταβλητή αναφοράς> όριο 2... Μόλις συμβεί αυτό, ο βρόχος βγαίνει και ο έλεγχος μεταφέρεται στην εντολή μετά τη δομή που δόθηκε.
Στο For ... downto ... do, ο αλγόριθμος λειτουργίας είναι παρόμοιος με τα παραπάνω, με εξαίρεση ορισμένα σημεία:
- Στην 3η παράγραφο, ελέγχεται η συνθήκη: μεταβλητή αναφοράς ≥ όριο 2.
- Στην 5η γραμμή του αλγορίθμου, ο μετρητής μειώνεται κατά 1.
- Στην 6η παράγραφο, οι εντολές 3-5 θα εκτελεστούν έως ότου ικανοποιηθεί η συνθήκη: μεταβλητή πηγής <όριο 2.
Όλα τα άλλα είναι τα ίδια και στους δύο αλγόριθμους εργασίας.
Διάγραμμα μπλοκ βρόχου με παράμετρο
Οι βρόχοι με μια παράμετρο έχουν την ακόλουθη μορφή ενός διαγράμματος μπλοκ (αν και έχει ήδη παρουσιαστεί παραπάνω). Μια απλοποιημένη οργάνωση της δομής φαίνεται επίσης εδώ.
Βασικές απαιτήσεις για έναν κύκλο με μια παράμετρο
Οι βρόχοι με παραμέτρους απαιτούν ένα συγκεκριμένο είδος συνθηκών.
- Όρια μετρητών και κενών (δηλ. Αναφ.μεταβλητή, περίγραμμα 1 και περίγραμμα 2) πρέπει να είναι του ίδιου τύπου δεδομένων. Εάν υπάρχει μόνο συμβατότητα μεταξύ των αρχικών και των τελικών τιμών του τμήματος και της αρχικής μεταβλητής, τότε το πρόγραμμα ενδέχεται να συμπεριφέρεται εσφαλμένα, καθώς τα όρια θα μετατραπούν σύμφωνα με τον τύπο δεδομένων της αρχικής παραμέτρου.
- Ο τύπος δεδομένων στον οποίο πρέπει να ανήκουν οι τιμές των παραμέτρων πρέπει να είναι ακέραιος. Δεν συνιστάται ιδιαίτερα η χρήση ενός πραγματικού τύπου.
- Είναι ανεπιθύμητο να αναγκαστεί να αλλάξει βίαια την τιμή της παραμέτρου. Διαφορετικά, ο χρήστης δύσκολα θα μπορεί να παρακολουθεί πιθανά σφάλματα που έχουν εμφανιστεί.
- Σε αντίθεση με άλλους τύπους βρόχων, Για ... να ... κάνουμε ή Για… προς τα κάτω… το βήμα δεν μπορεί να αλλάξει σε παράμετρο διαφορετική από 1.
Turbo Pascal: Πώς να ξεφύγετε από το βρόχο
Συχνά υπάρχουν εργασίες στις οποίες υπάρχουνβρόχος, δηλαδή, η ελεγχόμενη κατάσταση είναι πάντα αληθινή. Η διαδικασία διακοπής βοηθά στην έξοδο από βρόχους με προϋπόθεση, μετα-κατάσταση, παράμετρο. Δηλαδή, η εργασία τους τερματίζεται νωρίτερα.
Κύκλοι με παράμετρο Pascal (προγραμματισμόςπου υποθέτει ότι η "αιώνια" αλήθεια της κατάστασης) μπορεί να σταματήσει χρησιμοποιώντας το Συνέχεια. Εδώ η εργασία οργανώνεται ως εξής: η τρέχουσα επανάληψη τελειώνει την εκτέλεση πριν από το χρονοδιάγραμμα, ο έλεγχος μεταφέρεται στην επόμενη εντολή, αλλά χωρίς έξοδο από το βρόχο.
Η διαδικασία εξόδου είναι απαραίτητη για ναγια να ολοκληρώσετε την εργασία ενός ή άλλου μπλοκ στον κώδικα προγράμματος. Ονομάζεται μέσα σε μια διαδικασία (λειτουργία) και την ίδια στιγμή, η εκτέλεση αυτού του "κομματιού" σταματά αμέσως. Εάν το Exit βρίσκεται στο κύριο μπλοκ του προγράμματος, τότε κλείνει.
Η διαδικασία διακοπής μειώνει την αρχή της λειτουργίας στα ακόλουθα: η εργασία του προγράμματος τερματίζεται τελείως.
Παραδείγματα εργασιών με λύση
Θα είναι χρήσιμο για τον χρήστη μετά τη μελέτη του θέματος"Βρόχοι με παράμετρο σε pascal" παραδείγματα πρώτα μελέτη και, στη συνέχεια, πρακτική γραφή του κώδικα μόνοι σας. Οι απλές εργασίες βοηθούν τον μελλοντικό προγραμματιστή να μάθει τη θεωρία στην πράξη και στη συνέχεια να την εφαρμόσει με επιτυχία. Στο θέμα "Βρόχοι με παράμετρο", παραδείγματα προβλημάτων με μια λύση μπορούν να βρεθούν εύκολα και περίπλοκα. Εδώ είναι 3 προβλήματα στα οποία αναλύονται οι αλγόριθμοι εργασίας και δίνονται εξηγήσεις και σχόλια σε κάθε λύση.
Πρόβλημα 1
Δεδομένου ενός δισδιάστατου πίνακα φυσικών αριθμών στην περιοχή [0..199], που επιλέγεται τυχαία. Βρείτε τον αριθμό και των δύο ψηφίων των οποίων το άθροισμα των ψηφίων είναι πολλαπλάσιο των 2.
Αλγόριθμος ενεργειών:
- Δημιουργήστε έναν δισδιάστατο πίνακα.
- Ελέγξτε κάθε αριθμό για συμμόρφωση με τους όρους:
a) εάν 9 <X <100, διαιρέστε το πλήρως με 10 χρησιμοποιώντας div ·
β) επιλέξτε το δεύτερο ψηφίο του αριθμού διαιρώντας με mod.
γ) προσθέστε τους επισημασμένους αριθμούς ·
δ) διαιρέστε με mod το δεδομένο ποσό με 2 ·
ε) εάν το αποτέλεσμα είναι 0, τότε ο μετρητής αυξάνεται κατά 1.
Εργασία 2
Δεδομένου ενός μονοδιάστατου πίνακα ακέραιων στοιχείων. Βρείτε τον αριθμό των θετικών αριθμών.
Αλγόριθμος ενεργειών:
- Δημιουργήστε μια σειρά από ακέραια στοιχεία που δημιουργήθηκαν με τυχαία.
- Εισαγάγετε μια δήλωση IF υπό όρους στο βρόχο με την παράμετρο, η οποία θα ελέγξει το καθορισμένο στοιχείο για συμμόρφωση με την συνθήκη: X> 0.
- Εάν πληρούται η συνθήκη, τότε ο μετρητής αυξάνεται κατά 1.
- Μετά τον κύκλο, εμφανίστε την προκύπτουσα τιμή μετρητή.
Τα δεδομένα σε παρένθεση {} είναισχόλια. Στη γραμμή 11, μπορείτε να εμφανίσετε τον πίνακα στην οθόνη με δύο τρόπους: αφήστε κενό μεταξύ των αριθμών ή αφήστε έναν ορισμένο αριθμό κελιών για κάθε στοιχείο (σε αυτήν την περίπτωση, υπάρχουν 5 από αυτά).
Στη γραμμή 12, η μεταβλητή μετρητή μπορεί επίσης να αυξηθεί με δύο τρόπους: είτε προσθέστε 1 στην προηγούμενη τιμή είτε χρησιμοποιήστε τη συνήθη συνάρτηση Inc.
Πρόβλημα 3
Σας δίνεται μια τετραγωνική μήτρα. Βρείτε τον αριθμό των θετικών στοιχείων στην κύρια διαγώνια.
Επεξηγήσεις:
Σε μια σειρά αριθμών, η κύρια διαγώνια εκτείνεται απόπάνω αριστερή γωνία προς τα κάτω δεξιά. Η ιδιαιτερότητά του είναι το γεγονός ότι οι δείκτες γραμμής και στήλης είναι οι ίδιοι. Επομένως, αρκεί να οργανώσετε 1 βρόχο για να μετακινηθείτε στις γραμμές χωρίς να περάσετε από τα υπόλοιπα στοιχεία.
Αλγόριθμος ενεργειών:
- Δημιουργήστε ένα τετράγωνο πίνακα.
- Ορίστε τη μεταβλητή που είναι υπεύθυνη για τη μέτρηση θετικών στοιχείων στην τιμή "0".
- Δημιουργήστε έναν κύκλο για τη δημιουργία τετραγωνικού πίνακα.
- Οργανώστε έναν βρόχο για να ελέγξετε την κατάσταση: εάν ο αριθμός στην κύρια διαγώνια> 0, τότε ο μετρητής αυξάνεται κατά 1.
- Μετά το τέλος του κύκλου, εμφανίστε την τιμή της μεταβλητής που αποθηκεύει τον αριθμό των θετικών στοιχείων στην οθόνη.
Η αντίθεση δύο γλωσσών προγραμματισμού: C και Turbo Pascal
Κατά κανόνα, ένας προγραμματιστής αυτοσεβασμού γνωρίζειπολλές γλώσσες. Για παράδειγμα, μπορεί να είναι C ++, Turbo Pascal, Delphi, Java κ.λπ. Η αντιπαράθεση μεταξύ των δύο εκφράστηκε σαφώς τη δεκαετία του '80. (C και turbo pascal). Στο τέλος του 20ού αιώνα, ο ίδιος αγώνας παρατηρήθηκε μεταξύ C ++ και Java.
Σε εικονικό χώρο μεταξύ τριών δωδεκάδωνΥπάρχουν τρία πιο φωτεινά ζεύγη γλωσσών προγραμματισμού, η αντίθεση των οποίων εντυπωσίασε τα μεγαλύτερα μυαλά του κυβερνοχώρου: Algol-60 και Fortran, Pascal και C, Java και C ++. Φυσικά, αυτά τα συναισθήματα είναι υποκειμενικά, αλλά κάποτε το ζευγάρι ήταν ο ηγέτης. Αυτό οφείλεται στις απαιτήσεις του κλάδου και στην ανάγκη για ένα συγκεκριμένο προϊόν λογισμικού. Στη δεκαετία του '70. Ο Fortran κυβέρνησε τον κόσμο, ο Turbo Pascal στη δεκαετία του '80, ο C ++ στη δεκαετία του '90. Φυσικά, κανένας από αυτούς "δεν πέθανε". Αντίθετα, έχουν εξελιχθεί σε βελτιωμένα προϊόντα λογισμικού.
Όταν μαθαίνετε γλώσσες προγραμματισμού, θα παρατηρήσετε ότι η σύνταξη είναι παρόμοια σε ορισμένα θέματα. Έτσι, οι βρόχοι με μια παράμετρο στο C είναι παρόμοιοι με παρόμοιες κατασκευές στο Pascal, με εξαίρεση ορισμένα σημεία.
Είναι ενδιαφέρον ότι οι προγραμματιστές του Turbo Pascal (OldΤο Light) χρησιμοποίησε τα αποτελέσματα των εξελίξεων των Αμερικανών επιστημόνων, ενώ στον Νέο Κόσμο χρησιμοποίησαν ενεργά τα αποτελέσματα της έρευνας Ευρωπαίων ειδικών. Στην Ευρώπη, οι προγραμματιστές υποστηρίζουν περισσότερο την καθαριότητα και τη συμπαγή γλώσσα των προγραμμάτων και τα αμερικανικά μυαλά τείνουν να χρησιμοποιούν νέες τάσεις στη σύνταξη κώδικα.