Când avem nevoie să executăm o buclă cel puțin o dată, atunci folosim bucla Do-while în PowerShell.
Bucla Do-While este o structură de buclă în care o condiție este evaluată după executarea instrucțiunilor. Această buclă este cunoscută și sub numele de buclă controlată la ieșire.
Bucla do-while este la fel ca și bucla while, dar condiția dintr-o buclă do-while este întotdeauna verificată după executarea instrucțiunilor dintr-un bloc.
Cuvântul cheie Do este, de asemenea, utilizat cu cuvântul cheie ‘Until’ pentru a executa instrucțiunile dintr-un bloc de script. La fel ca o buclă Do-while, și buclă Do-until se execută cel puțin o dată înainte ca condiția să fie evaluată. Bucla Do-Until își execută instrucțiunile dintr-un bloc de cod până când condiția este falsă. Când condiția este adevărată, bucla se termină.
Pot fi folosite cuvintele cheie de control al fluxului, cum ar fi Break și Continue într-o buclă Do-while sau Do-untiltil.
Sintaxa
Blocul următor prezintă sintaxa buclei Do-while:
Blocul următor prezintă sintaxa buclei Do-until:
Flowchart of Do-While loop
Flowchart of Do-Until loop
Exemple
Următoarele exemple descriu modul de utilizare a buclelor Do-while și Do-until în PowerShell:
Exemplu1: În acest exemplu, se tipăresc valorile unui număr întreg de la 1 la 10.
Output:
12345678910
Exemplu2: În acest exemplu, vom imprima valorile unui array folosind bucla Do until.
Output:
1234567
Exemplul3: În acest exemplu, vom imprima tabla lui 5 folosind bucla Do-while.
Output:
5 * 1 = 55 * 2 = 105 * 3 = 155 * 4 = 205 * 5 = 255 * 6 = 305 * 7 = 355 * 8 = 405 * 9 = 455 * 10 = 50
În acest exemplu, am imprimat tabla înmulțirii lui 5 folosind o buclă Do-while. În primul rând, am creat și inițializat o variabilă $table și $i cu valorile 5 și, respectiv, 1. Apoi am scris o buclă Do-while.
În buclă, avem o comandă echo care va imprima rezultatul lui $res, care stochează înmulțirea lui $table * $i.
De fiecare dată, valoarea variabilei $i este mărită cu 1, iar condiția este verificată. Când valoarea variabilei $i devine 11, condiția devine falsă, iar bucla se termină.
.