Het artikel is bedoeld om basisbegrippen te geven van wat een cyclisch algoritme is, wat gebruikelijk is in elke programmeertaal en het voorbereidingsniveau van de programmeur.
Een algoritme is een opeenvolging van actiesom een rekenkundig en ander probleem op te lossen in een eindig aantal stappen. Acties (instructies) voor de uitvoering van het algoritme kunnen achter elkaar (sequentieel), gelijktijdig (parallel) of in willekeurige volgorde worden uitgevoerd, met behulp van cycli en overgangsvoorwaarden. Algoritmen worden niet alleen gebruikt bij het programmeren, maar ook bij andere activiteiten, bijvoorbeeld bij het beheer van productie- en bedrijfsprocessen.
Een algoritme zou cyclisch zijn als het erin zitEr zijn acties of sets van acties die meer dan eens moeten worden uitgevoerd. Repetitieve algoritmische acties zijn het lichaam van een cyclus. Bovendien heeft elke cyclus de voorwaarde dat de uitvoering van het cyclische algoritme eindigt.
Elk cyclisch algoritme heeft de samenstellingde toestand van de lus, dat wil zeggen, een logische uitdrukking waarvan het resultaat bepaalt of het luslichaam nogmaals zal worden uitgevoerd of de lus zal worden beëindigd. Door de verwerkingsmethode worden alle cyclische algoritmen verdeeld in drie groepen.
In dergelijke cyclische algoritmen wordt de voortzettingstoestand gecontroleerd voordat het luslichaam wordt verwerkt, dat wil zeggen dat het nodig is om de lusverwerking te herhalen.
Beschouw de uitvoer van getallen van -5 tot 0 als een voorbeeld van cyclische algoritmen met een voorwaarde:
De conditiecontrole wordt uitgevoerd na de eerste verwerking van het luslichaam en bestuurt de uitvoer ervan.
Laten we de berekening van de som van 1 tot het getal n analyseren als een voorbeeld van cyclische algoritmen waarin de postconditie wordt gebruikt:
Het wordt meestal gebruikt in algoritmen wanneer het vereiste aantal lusuitvoeren van tevoren bekend is en wordt heel vaak gebruikt bij het werken met arrays.
Zo'n algoritme bevat drie verplichte elementen:
Bij elke stap controleert het programma datOf de startwaarde eindig is. En als dat zo is, eindigt de cyclus. Anders voegen we de stapgrootte toe aan de startwaarde en de cyclus wordt herhaald. Er moet speciaal op worden gewezen dat elke onvoorwaardelijke cyclus kan worden vervangen door een voorwaardelijke voorwaarde of een voorwaarde vooraf.
Bij het compileren van cyclische algoritmen,zich aan beide dwingende voorwaarden. De eerste is om de cyclus te beëindigen, is het noodzakelijk dat de inhoud van het lichaam aangetast post of voorwaarde, anders hadden we eindelijk een oneindige lus te krijgen. Maar voor sommige van dergelijke cycli gebruikte softwaretoepassingen. Als voorbeeld van cyclische algoritmen die voor onbepaalde tijd uitgevoerd, kunt u het Windows-besturingssysteem, die een eindeloze lus poll de muis gebruikt om de acties van de gebruiker vast te stellen veroorzaken. Ten tweede, variabelen doorgegeven aan de cyclus moet ten minste één van zijn executie te bieden.
Om de waarde te consolideren, geven we een voorbeeldcyclische algoritmen voor het berekenen van de faculteit van een geheel getal. Het bovenstaande voorbeeld is een lus met een voorwaarde, maar het is mogelijk om elk soort cyclisch algoritme te implementeren.