Instrucțiunea break (structuri repetitive)
Această lecție este despre instrucțiunea break: definiție, exemple și exerciții propuse.
Există momente când vrem să ieșim dintr-o structură repetitivă, chiar și dacă
condiția
este încă adevărată. Pentru asta, ne folosim de instrucțiunea
break
.
Instrucțiunea break
întrerupe execuția unei structuri repetitive (while
,
do while
, for
), trecând la instrucțiunile de după indiferent dacă
condiția
acestor structuri mai sunt sau nu adevărate.
Sintaxa instrucțiunii break
Sintaxa instrucțiunii break
este următoarea:
break;
Exemple
Afișarea primelor n
numere naturale, însă dacă atingem valoarea 5
, ne
oprim.
//Pentru n = 8, se va afișa:
//1 2 3 4 5 (ne oprim la 5)
//Pentru n = 3, se va afișa:
//1 2 3
for(int i = 1; i <= n; i++) {
cout << i << " ";
if(i == 5) {
break;
}
}
Multe probleme cer citirea și prelucrarea unor numere până când se întâlnește
valoarea 0
. De exemplu, dacă vrem să calculăm suma unor numere până la
întâlnirea lui 0
, putem proceda astfel:
//Pentru numerele 4 9 10 0, se va afișa:
//23
int sum = 0;
while(true) {
int nr;
cin >> nr;
if(nr == 0) {
break;
}
sum += nr;
}
cout << sum;
Problemă rezolvată
For fără condiție
Să se afișeze primele n
numere naturale nenule, însă fără a folosi o
condiție în structura repetitivă aleasă:
-
for(int i = 1; true; i++)
-
while(true)
Testează-ți rezolvarea pe această pagină.
Exemplu: Pentru n = 3
se vor afișa numerele 1 2 3
.
Rezolvare: Vom citi n
, după care folosind o structură repetitivă de tip
for
, vom afișa numerele. În loc de condiție
, vom folosi un if
cu un
break
.
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for(int i = 1; true; i++) {
cout << i << " ";
if(i == n) {
break;
}
}
}
Exercițiu propus
Completează următoarea secvență de cod:
Să se afișeze primele n
numere naturale nenule, oprindu-ne dacă atingem
numărul 7
:
int n;
cin >> n;
for(int i = 1; i <= n; i++) {
if(??? == 7) {
???;
}
cout << i << " ";
}
Bibliografie și alte resurse
DS
Autorul acestei lecții
Dominic Satnoianu
Această lecție a fost redactată de către Dominic Satnoianu.
© 2021 – 2025 Aspire Education Labs SRL. Toate drepturile rezervate.
Așa cum este specificat și în termeni și condiții, conținutul acestei pagini este protejat de legea drepturilor de autor și este interzisă copierea sau modificarea acestuia fără acordul scris al autorilor.
Încălcarea drepturilor de autor este o infracțiune și se pedepsește conform legii.
Comentarii 0