Tipuri de bază și exemple de algoritmi ciclici

Articolul urmărește să ofere concepte de bază despre ceea ce este un algoritm ciclic, care sunt comune oricărui limbaj de programare și nivel de pregătire al programatorului.

Conceptul de algoritm

Un algoritm este o secvență de acțiuni pentru a obține soluția unei probleme computaționale și a altor probleme într-un număr finit de pași. Acțiunile (instrucțiunile) de execuție a algoritmului pot fi executate unul după altul (secvențial), simultan (în paralel) sau într-o ordine arbitrară, utilizând cicluri și condiții de tranziție. Algoritmii sunt utilizați nu numai în programare, ci și în alte domenii de activitate, de exemplu, în managementul proceselor de producție și de afaceri.

Algoritmi ciclici

Un algoritm este numit ciclic dacă conține acțiuni sau seturi de acțiuni care trebuie efectuate mai mult decât o dată. Acțiunile algoritmice repetitive sunt corpul unui ciclu. În plus, fiecare ciclu are o condiție ca executarea algoritmului ciclic să se încheie.

Tipuri de algoritmi ciclici

Fiecare algoritm ciclic are o comportare în compoziție, adică o expresie logică a cărei rezultat determină dacă corpul buclă va fi executat din nou sau bucla va fi terminată. Prin metoda de procesare, toți algoritmii ciclici sunt împărțiți în trei grupe.

Ciclu cu condiție prealabilă

În astfel de algoritmi ciclici, condiția de continuitate este verificată înainte de prelucrarea corpului buclei, adică este necesară repetarea procesării buclei.

Luați în considerare rezultatul numerelor de la -5 la 0 ca un exemplu de algoritmi ciclici cu o condiție prealabilă:

exemplu de algoritmi cicliciElementele algoritmului:

  1. Setați valoarea inițială a variabilei de bază j la -5.
  2. Verificăm starea ciclului. Condiția este pozitivă, iar corpul buclă este executat pentru prima dată.
  3. Apoi adăugăm 1 la variabila j, verificăm din nou starea ciclului.
  4. Buclele continuă să funcționeze atâta timp cât valoarea j este mai mică sau egală cu zero, altfel ieșim din bucla de pe ramura FALSE

Ciclu cu postcondiție

Verificarea condiției se efectuează după prima prelucrare a corpului bucla și controlează ieșirea din acesta.

Să analizăm calculul sumei de la 1 la numărul n ca exemplu de algoritmi ciclici în care se folosește postcondiția:



se spune că un algoritm este ciclic dacă

  1. Introducem un număr finit al calculului sumei n și setăm valorile inițiale zero ale sumei totale sumei și ale contorului ciclului i.
  2. Buclele sunt executate înainte de prima verificare a condiției.
  3. Verificăm starea buclei, adică valoarea contorului i este mai mică sau egală cu n.
  4. Dacă rezultatul condiției este pozitiv, executăm buclă din nou, în caz contrar terminăm bucla și tipăream suma pe afișaj sau imprimăm.

Ciclu necondiționat

Acesta este de obicei folosit în algoritmi atunci când numărul necesar de execuții de buclă este cunoscut în avans și este foarte des folosit atunci când lucrați cu matrice.

Un astfel de algoritm conține trei elemente obligatorii:

  1. Valoarea de pornire, numită parametrul bucla, deoarece această variabilă se modifică după fiecare execuție a ciclului și determină timpul de finalizare.
  2. Valoarea la care se termină bucla.
  3. Pas ciclu.

ceea ce este un algoritm ciclic

La fiecare pas, programul verifică dacă valoarea de pornire este mai mare decât valoarea finală. Și dacă da, ciclul se încheie. În caz contrar, adăugăm mărimea pasului la valoarea inițială, iar ciclul se repetă. Trebuie remarcat în mod special faptul că orice ciclu necondiționat poate fi înlocuit cu un ciclu condiționat cu condiție pre- sau postcondiționată.

La compilarea algoritmilor ciclici, trebuie respectate două condiții necesare. În primul rând, pentru a pune capăt buclei, este necesar ca conținutul corpului să afecteze postul sau condiția prealabilă, altfel putem ajunge la o buclă infinită. Dar pentru anumite sarcini software se aplică astfel de cicluri. Ca un exemplu de algoritmi ciclici care rulează pe termen nedefinit, putem cita sistemul de operare Windows, unde se utilizează un ciclu de votare infinită a mouse-ului pentru a determina acțiunile utilizatorului. În al doilea rând, variabilele trecute în buclă trebuie să furnizeze cel puțin o execuție.

Calcularea factorială

Pentru a consolida lectura, vom da un exemplu de algoritmi ciclici pentru calcularea factorială a unui întreg. Exemplul de mai sus este o buclă cu o condiție prealabilă, dar este posibil să se pună în aplicare orice tip de algoritm ciclic.

  • Intrare: datele sunt un întreg pentru care este definit factorialul.
  • Variabilele sistemului: parametrul ciclului i, care ia valori de la 1 la datele din pasul 1.
  • Rezultat: factorial variabil este factorialul datelor de număr, care este produsul întregului de la 1 la date.

exemplu de algoritmi cicliciLuați în considerare algoritmul în pași:

  1. Algoritmul a primit datele numerice, pentru care este necesar să se calculeze factorul.
  2. Factorul variabil, în care rezultatul final va fi stocat, are o valoare de una.
  3. organiza ciclu cu parametru i și începe valoarea 1. Valoarea finală este data inițială a numărului. Odată ce valoarea contorului i este mai mare, bucla se termină.
  4. Se efectuează ciclul de calcul factorial - se multiplică valorile curente ale factorilor și ale contorului.
  5. La valoarea contorului adăugați o unitate, verificați starea buclă și, dacă rezultatul este pozitiv, o terminăm.
  6. După ultima iterație a buclei, valoarea datelor factoriale! rămâne în factorial și este afișat sau tipărit.
Distribuiți pe rețelele sociale:

înrudit
Limba algoritmică școlară: scop, reguli, comenzi. Conceptul de limbaj algoritmicLimba algoritmică școlară: scop, reguli, comenzi. Conceptul de limbaj algoritmic
Limbaj de programare JavaLimbaj de programare Java
Ce sunt algoritmii și de ce sunt necesare?Ce sunt algoritmii și de ce sunt necesare?
Algoritmi liniare - schema, structura și computațiaAlgoritmi liniare - schema, structura și computația
Diagrama bloc a algoritmului: programe, sarcini, elemente, construcțiiDiagrama bloc a algoritmului: programe, sarcini, elemente, construcții
Conceptul algoritmului și proprietățile algoritmului. Tipuri de algoritmiConceptul algoritmului și proprietățile algoritmului. Tipuri de algoritmi
Algoritmul Kruskal - construirea scheletului optimAlgoritmul Kruskal - construirea scheletului optim
Algoritm: concept, proprietăți, structură și tipuriAlgoritm: concept, proprietăți, structură și tipuri
Ce este un algoritm cu ramificare? Exemple și definiții ale algoritmilor de ramificareCe este un algoritm cu ramificare? Exemple și definiții ale algoritmilor de ramificare
Programare. Construcții algoritmice de bazăProgramare. Construcții algoritmice de bază
» » Tipuri de bază și exemple de algoritmi ciclici