Το άρθρο έχει σχεδιαστεί για να παρέχει βασικές έννοιες του τι είναι ένας κυκλικός αλγόριθμος, ο οποίος είναι κοινός σε οποιαδήποτε γλώσσα προγραμματισμού και στο επίπεδο προετοιμασίας του προγραμματιστή.
Ένας αλγόριθμος είναι μια ακολουθία ενεργειώνγια την επίλυση ενός υπολογιστικού και άλλου προβλήματος σε ένα πεπερασμένο αριθμό βημάτων. Οι ενέργειες (οδηγίες) για την εκτέλεση του αλγορίθμου μπορούν να εκτελούνται το ένα μετά το άλλο (διαδοχικά), ταυτόχρονα (παράλληλα) ή με αυθαίρετη σειρά, χρησιμοποιώντας κύκλους και συνθήκες μετάβασης. Οι αλγόριθμοι χρησιμοποιούνται όχι μόνο στον προγραμματισμό αλλά και σε άλλους τομείς δραστηριότητας, για παράδειγμα στη διαχείριση της παραγωγής και των επιχειρηματικών διαδικασιών.
Ένας αλγόριθμος λέγεται ότι είναι κυκλικός αν είναι σε αυτόΥπάρχουν ενέργειες ή ομάδες ενεργειών που πρέπει να εκτελεστούν περισσότερες από μία φορές. Επαναλαμβανόμενες αλγοριθμικές ενέργειες είναι το σώμα ενός κύκλου. Επιπλέον, κάθε κύκλος έχει μια προϋπόθεση ότι τελειώνει η εκτέλεση του κυκλικού αλγορίθμου.
Κάθε κυκλικός αλγόριθμος έχει στη σύνθεσή τουη συνθήκη του βρόχου, δηλαδή μια λογική έκφραση του οποίου το αποτέλεσμα καθορίζει εάν το σώμα βρόχου θα εκτελεστεί για μία ακόμη φορά ή ο βρόχος θα τερματιστεί. Με τη μέθοδο επεξεργασίας, όλοι οι κυκλικοί αλγόριθμοι χωρίζονται σε τρεις ομάδες.
Σε αυτούς τους κυκλικούς αλγορίθμους, η κατάσταση συνέχισης ελέγχεται πριν από την επεξεργασία του σώματος του βρόχου, δηλαδή, υπάρχει ανάγκη να επαναληφθεί η επεξεργασία του βρόχου.
Εξετάστε την έξοδο αριθμών από -5 έως 0 ως παράδειγμα κυκλικών αλγορίθμων με προϋπόθεση:
Ο έλεγχος κατάστασης εκτελείται μετά την πρώτη επεξεργασία του σώματος βρόχου και ελέγχει την έξοδο από αυτό.
Ας αναλύσουμε τον υπολογισμό του αθροίσματος από το 1 στον αριθμό n ως παράδειγμα κυκλικών αλγορίθμων στους οποίους χρησιμοποιείται η μεταχρέωση:
Συνήθως χρησιμοποιείται σε αλγόριθμους όταν ο απαιτούμενος αριθμός εκτελέσεων βρόχου είναι γνωστός εκ των προτέρων και χρησιμοποιείται πολύ συχνά όταν εργάζεται με συστοιχίες.
Ένας τέτοιος αλγόριθμος περιέχει τρία υποχρεωτικά στοιχεία:
Σε κάθε βήμα, το πρόγραμμα επαληθεύει αυτόΕάν η αρχική τιμή είναι πεπερασμένη. Και αν ναι, ο κύκλος τελειώνει. Διαφορετικά, προσθέτουμε το μέγεθος βήματος στην τιμή έναρξης και ο κύκλος επαναλαμβάνεται. Θα πρέπει να σημειωθεί ειδικά ότι οποιοσδήποτε άνευ όρων κύκλος μπορεί να αντικατασταθεί από έναν υπό όρους ένας με προ- ή μετα-προϋπόθεση.
Κατά την κατάρτιση κυκλικών αλγορίθμων,να τηρούν δύο υποχρεωτικές προϋποθέσεις. Πρώτον, για να τερματίσετε τον βρόχο, είναι απαραίτητο τα περιεχόμενα του σώματος να επηρεάσουν τη θέση ή την προϋπόθεση, διαφορετικά μπορούμε να καταλήξουμε με έναν άπειρο βρόχο. Αλλά για ορισμένες εργασίες λογισμικού εφαρμόζονται τέτοιοι κύκλοι. Ως παράδειγμα κυκλικών αλγορίθμων που λειτουργούν επ 'αόριστον, μπορούμε να αναφέρουμε το λειτουργικό σύστημα των Windows, όπου χρησιμοποιείται ένας άπειρος κύκλος δημοσκόπησης ποντικιών για τον προσδιορισμό των ενεργειών του χρήστη. Δεύτερον, οι μεταβλητές που μεταφέρονται στον βρόχο πρέπει να παρέχουν τουλάχιστον μία εκτέλεση.
Για να εδραιωθεί η ανάγνωση, δίνουμε ένα παράδειγμακυκλικούς αλγορίθμους για τον υπολογισμό του παράγοντα ενός ακέραιου αριθμού. Το παραπάνω παράδειγμα είναι ένας βρόχος με προϋπόθεση, αλλά είναι δυνατή η εφαρμογή κάθε είδους κυκλικού αλγορίθμου.