În ultima lecție nouă, am vorbit despre matrice ca o structură de date. În această lecție vă voi arăta cum să lucrați cu matrice și să procesați elementele lor.
Pentru a procesa mai multe elemente dintr-o matrice, programatorii folosesc adesea bucle. Ciclurile vă permit să efectuați o serie de activități sau operații similare. În limbajul de programare Pascal / Delphi, există doar 3 tipuri de bucle: pentru, în timp ce repetați. Vom analiza activitatea lor în următorul exemplu:
[cc lang = "delphi"] var a: matrice [0..99] de integer; [/ cc]
Este necesar să numărați numărul elementelor din matrice a căror valoare este mai mare de 10.
Luați în considerare implementarea sarcinii, utilizând tipurile existente de cicluri.
[cc lang = "delphi"] var i, n: întreg;
începe
n: = 0;
pentru i: = 0 până la 99 nu
dacă o [i]> 10 atunci inc (n);
sfarsit; [/ cc]
Ciclul for utilizează o variabilă întregă i pentru munca sa. «Pentru i: = 0-99 face» înseamnă că, în prima iterație (primul) i atribui „0“, atunci i se va crește cu fiecare iterație a buclei 1 și atunci când ajunge la 99, după ce trece ultima iterație, ciclul este finalizat . Conținutul bucla merge fie după cuvântul cheie "face" și poate fi specificat între cuvintele "începe" și "sfârșitul". În interiorul buclei, vom verifica este elementul i-lea matrice o mare 10. Dacă da, crește indicele n de unul. Înainte de ciclu, n trebuie resetat; setați la zero, astfel încât contul să pornească de la zero. Dacă este necesar ca iterațiile din buclă să se desfășoare în ordine inversă (de la 99 la 0), ciclul va avea următoarea formă:
[cc lang = "delphi"]
pentru i: = 99 downto 0 nu
dacă o [i]> 10 atunci inc (n);
sfarsit; [/ cc]
[cc lang = "delphi"] n: = 0;
i: = 0;
în timp ce i 10 atunci inc (n);
inc (i);
sfarsit; [/ cc]
În acest ciclu, incrementăm manual contorul de iterație i și până când i 10 atunci inc (n);
inc (i);
până la i = 99; [/ cc]
Buclele repetate sunt un ciclu cu o condiție ulterioară, adică bucla se va termina atunci când postcondiția specificată după executarea ultimei iterații.
Acum, să scriem un mic exemplu de umplere a unei mulțimi de elemente întregi cu numere aleatorii.
[cc lang = "delphi"]
var a: matrice [0..99] de intreg;
i: întreg;
începe
randomiza; // inițializați generatorul de numere
pentru i: = 0 până la 99 nu începe
a [i]: = aleatoare (100); // atribuie elementului matricei un întreg aleator (de la 0 la 99)
se încheie;
se încheie;
[/ cc]
[Notă] Trebuie remarcat faptul că cel mai frecvent în codul folosește o buclă (în special atunci când prelucrarea tablouri) din cauza acestui avantaj față de alte cicluri este că acesta are un contor încorporat iterație aceasta, ceea ce face codul mai ușor, eliberându-l de exces " Inc (i) »,« i: = 0“... acest lucru este util mai ales atunci când se utilizează bucle duble - da, există, de asemenea, triplu și un sfert - cicluri pot fi investite în alte cicluri, atunci când trebuie să se ocupe de structuri complexe [/ note].
În următoarea lecție, vom vorbi despre proceduri și funcții și cum să lucrăm cu ele. Abonați-vă la newsletter-ul de e-mail pentru a ține pasul cu evenimentele de pe site-ul nostru!
Cicluri în Java
Cicluri în C ++