Lecții

C++ – lesson 7

Operațiile div (împărțire întreagă), mod (restul împărțirii) și repetarea acțiunilor (folosind bucle în C++).

 

📘 Ghid C++   div, mod și bucle

Acest ghid explică noțiunile esențiale pentru examenele de admitere: împărțirea întreagă (div), restul împărțirii (mod) și repetarea acțiunilor (bucle) în C++, cu explicații clare pentru fiecare linie.


🔢 1. Împărțirea întreagă – div (în C++: /)

În C++, dacă împărțim două numere întregi (int), rezultatul este tot un număr întreg – partea zecimală se taie, nu se rotunjește.

int a = 17;           // a este 17
int b = 5;            // b este 5
int rezultat = a / b; // 17 / 5 = 3 (nu 3.4!)
  • int = tip pentru numere fără virgulă
  • a / b = câtul împărțirii întregi

✅ Exemplu: Din 17 mere, câte pachete de câte 5 poți face? Răspuns: 17 / 5 = 3 pachete.


🔁 2. Restul împărțirii – mod (în C++: %)

Operatorul % returnează restul împărțirii a două numere întregi.

int a = 17;
int b = 5;
int rest = a % b; // rest = 2, pentru că 17 = 5*3 + 2

Folosiri utile:

  • Număr par?
    if (n % 2 == 0) → par
  • Ultima cifră:
    ultima = n % 10; (ex: 123 → 3)
  • Divizibilitate:
    if (n % 3 == 0) → se împarte exact la 3

% funcționează doar cu numere întregi (nu cu float sau double).


🔁 3. Repetarea acțiunilor – Bucle („repeat”)

A. Bucle for – repetă de un număr cunoscut de ori

for (int i = 0; i < 5; i++) {
    cout << "Salut!\n";
}

Explicație:

  • int i = 0 → contorul pornește de la 0
  • i < 5 → repetă cât timp i este mai mic decât 5
  • i++ → mărește i cu 1 la fiecare pas

✅ Folosește for când știi exact de câte ori vrei să repeți (ex: „afișează primele 10 numere”).

B. Bucle while – repetă cât timp o condiție e adevărată

int x;
cin >> x;
while (x != 0) {
    cout << x * 2 << endl;
    cin >> x; // citește următorul număr
}

✅ Folosește while când NU știi câte valori vor veni (ex: „citește până la 0”).

C. while(true) + break – repetă la infinit până la „stop”

while (true) {
    int n;
    cin >> n;
    if (n == -1) break; // oprește bucla
    cout << n * n << endl;
}

📌 Exemple tipice de la examene

1. Suma cifrelor unui număr (ex: 123 → 6)

int n = 123, suma = 0;
while (n > 0) {
    suma += n % 10; // adaugă ultima cifră
    n /= 10;        // elimină ultima cifră
}
cout << suma; // afișează 6

2. Numără câte numere pare se introduc (până la 0)

int x, nr_pare = 0;
while (cin >> x && x != 0) {
    if (x % 2 == 0) nr_pare++;
}
cout << "Pare: " << nr_pare;

3. Afișează toți divizorii unui număr

int n = 12;
for (int i = 1; i <= n; i++) {
    if (n % i == 0)
        cout << i << " ";
}
// Ieșire: 1 2 3 4 6 12

✅ Rezumat rapid

Concept C++ Exemplu
Împărțire întreagă a / b 17 / 5 → 3
Restul împărțirii a % b 17 % 5 → 2
Repetă de N ori for (int i=0; i<N; i++) Afișează „Hello” de 5 ori
Repetă până la condiție while (cond) Citește până la 0

💡 Sfaturi pentru examen:

  • Folosește doar int (nu float).
  • % și / cu int sunt cele mai des folosite.
  • Dacă problema spune „până la 0” → folosește while.
  • Dacă spune „primele N numere” → folosește for.
  • Verifică codul pe hârtie cu exemple mici (ex: n=12).

One response to “C++ – lesson 7”

Leave a Reply to albert Cancel reply

Your email address will not be published. Required fields are marked *