Contact și feedback

Nu obții 100 de puncte sau ai nelămuriri în privința problemelor? Scrie-mi pe Instagram.


Ai găsit o greșeală, vrei să raportezi un utilizator sau vrei să comunici altceva? Folosește formularul de contact.


Vrei să ne transmiți o părere despre platformă? Folosește formularul de feedback.

Shortcuturi

Folosește următoarele shortcuturi pentru a naviga mai ușor pe platformă.

Generale

Meniu shortcuturi?
Căutare probleme sau utilizatori/
Navigare printre rezultatele căutării↑, ↓
Meniu de contact și feedbackCTRL + Shift + F
Ieșire din meniuriEsc

Editor probleme

Setări editorCTRL + Shift + S
Schimbare stil editorCTRL + Shift + E
Șabloane de codCTRL + Shift + 1/2/3
Golire editorCTRL + Shift + 4

Instrucțiunea break (structuri repetitive)

Această lecție este despre instrucțiunea break: definiție, exemple și exerciții propuse.

Obține medalia mult dorită. Devino As la olimpiadă.

Curs complet de olimpiadă, pregătit de olimpici de la Oxford și TU Delft.

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

Obține medalia mult dorită. Devino As la olimpiadă.

Curs complet de olimpiadă, pregătit de olimpici de la Oxford și TU Delft.

Cuprinsul lecției

Se încarcă…

Citește și

Cum să citești și să afișezi în fișiere în C++Matrice pătratice în C++. Diagonala principală și secundarăCombinatorică în C++: permutări, aranjamente, combinări și alteleCel mai puțin semnificativ bit în C++Valoarea absolută (modulul) unui număr în C++De ce cer unele probleme răspunsul modulo 666013 sau modulo 1.000.000.007?Indicatorul lui Euler în C++Maximul și minimul a trei valori în C++Verifică dacă un caracter este cifră în C++Materia pentru olimpiada de informatică - tot ce trebuie să știiCel mai semnificativ bit în C++Afișarea divizorilor primi ai unui număr în C++Vectorii în C++: citire și afișareNumărul de divizori al unui număr în C++Instrucțiunea do while (structuri repetitive)Transformarea unei litere mari în literă mică în C++Verifică dacă o literă este mică sau mare în C++Do while vs while în C++ - Care e diferența?Aplicații cu ciurul lui Eratostene în C++: suma divizorilor, numărul divizorilorCe este o funcție void în C++?Instrucțiunea de decizie în C++: if, else, switch, caseAl N-lea termen Fibonacci în C++Copiuțe: Cifrele unui numărȘiruri de caractere în C++. Tot ce trebuie să știiCitește un șir de caractere cu spații în C++Numărul de divizori al numerelor de la 1 la N (Folosind ciurul lui Eratostene)Verifică dacă un caracter este literă în C++Al N-lea termen dintr-o progresie aritmeticăNumărul de cifre ale factorialului unui numărCMMDC recursiv a două numere naturale în C++Prima cifră a unui număr în C++Cum să calculezi instant 2 la puterea N în C++Funcții predefinite în C++ (matematice, șiruri de caractere)Radicalul unui număr în C++ (rădăcina pătrată)Verificare dacă șir de caractere este palindrom în C++Factorialul unui număr în C++Transformarea unui număr din baza 10 în baza 2 în C++Verificare număr prim în C++ (Clasa a IX-a)Algoritm recursiv pentru căutare binară (clasa a X-a)Suma 1 + 2 + 3 + ... + N în C++Numărul permutărilor în C++ (formula permutărilor)Interschimbarea a două variabile în C++ (3 metode)Câte numere naturale sunt într-un interval dat? (C++)Citirea și afișarea matricelor în C++Generarea șirului Fibonacci generalizat în C++Cifra maximă și minimă a unui număr în C++Ce înseamnă endl în C++?Verifică dacă un număr dat este o putere de 2 în C++Ce este o variabilă unsigned în C++?Tipul struct în C++. Ce sunt structurile de date neomogeneCăutare binară în C++Cifrele unui număr. Prelucrarea cifrelor unui număr în C++Cel mai frecvent element dintr-un șir în C++Mediana unui șir de valori în C++Ce înseamnă variabilă globală și locală în C++?Cum să afișezi partea întreagă a unui număr real în C++Divide et Impera (metodă de programare C++)Recursivitate în C++Verifică dacă un număr este par sau impar fără modulo în C++Sortare crescătoare recursivă în C++ - Merge sort și Bubble sortVerificare dacă un număr este palindrom în C++Aria și circumferința unui cerc în C++Verificarea unui an bisect în C++Aflarea sumei primelor N sume GaussStructuri repetitive (while, do while, for, etc)Află secolul unui an citit de la tastatură în C++Numere triunghiulare. Verificarea unui număr triunghiularCifra maximă a unui număr recursiv în C++Rădăcina cubică a unui număr în C++ (cube root)Codul ASCII (tabel complet)Interclasarea a doi vectori în C++Maximul și minimul unui vector în C++Indicatorul lui Euler al numerelor de la 1 la N (Folosind ciurul lui Eratostene)Al N-lea termen dintr-o progresie geometricăOglinditul recursiv al unui număr în C++Oglinditul unui număr în C++CMMMC a două numere în C++ (cel mai mic multiplu comun)Operații cu numere mari în C++ - Toate funcțiile explicateInversarea unui șir de caractere în C++Suma numerelor naturale dintr-un interval dat în C++Instrucțiunea continue (structuri repetitive)Cel mai mic/mare divizor prim al numerelor de la 1 la N (Folosind ciurul lui Eratostene)Transformarea unui număr din baza 2 în baza 10 în C++Transformarea unei litere mici în literă mare în C++Tutorial instalare CodeBlocks (ușor) - Introducere în informatică C++Suma divizorilor numerelor de la 1 la N (Folosind ciurul lui Eratostene)Șirul lui Fibonacci în C++Suma divizorilor unui număr în C++Numărul combinărilor în C++ (formula combinărilor)Ciurul lui Eratostene în C++Inversarea unui vector în C++Afișarea elementelor unui vector recursiv în C++Verifică dacă un bit de pe o anumită poziție este 1 sau 0 în C++Complexitatea unui algoritm (timp și spațiu) în C++Calculul combinărilor de n luate câte k (nCk) în C++Maximul și minimul a n valori în C++Aria unui triunghi folosind coordonatele acestora în C++Comentarii în C++Distanța dintre două puncte în C++Verifică dacă un număr aparține șirului Fibonacci în C++Vectorii în C++: declarare și parcurgereTipuri de date în C++: numere întregi, reale, caractere și alteleCel mai mic număr cu suma cifrelor N în C++Matrice în C++. Declararea și parcurgerea tablourilor bidimensionaleInstrucțiunea break (structuri repetitive)Numărul minim de peroane pentru o gară în C++Instrucțiunea for (structuri repetitive)Verifică dacă o literă este vocală în C++Verifică dacă trei puncte sunt coliniare C++Bordarea unei matrice în C++Maximul și minimul a două valori în C++Cifra de control a unui numărPointer în C++. Variabile de tipul char * (char steluță)Numărul de apariții al unui număr într-un vector în C++Numărul aranjamentelor în C++ (formula aranjamentelor)Vectori de frecvență (de apariții) în C++Numărul de divizori primi ai unui număr în C++Instrucțiunea while (structuri repetitive)Suma elementelor unui vector recursiv în C++Ridicarea la putere în timp logaritmic în C++. Exponențiere rapidăFuncții în C++. Ce sunt subprogrameleMatrice Fibonacci - al n-lea termen Fibonacci în timp logaritmicCea mai lungă secvență de elemente crescătoare în C++Cel mai mare divizor comun (CMMDC) a două numere în C++

© Drepturi de autor

Echipa InfoAs își rezervă drepturile de autor pentru conținutul acestei pagini. Copierea conținutului fără acordul scris expres al InfoAs reprezintă o încălcare a Legii 8/1996 și va fi tratată ca atare.

Trimite lecția

Toată lecția

Doar videoclipul pe YouTube

Informatica devine ușoară cu InfoAs

Intră în cont