|

Structura Repetitivă 6


1. Obiectivele lecției:

  • Să înțeleagă conceptul de structură repetitivă.
  • Să identifice și să utilizeze tipurile de bucle: while, do-while și for.
  • Să implementeze algoritmi care folosesc structuri repetitive în C++.
  • Să rezolve probleme care implică repetarea unor instrucțiuni.

2. Conținutul lecției:

Ce este structura repetitivă?

  • Definiție: Structura repetitivă permite executarea unui bloc de cod de mai multe ori, cât timp o anumită condiție este adevărată.
  • Scop: Automatează repetarea unor operații, economisind timp și resurse.

Tipuri de structuri repetitive:

  1. Buclele cu testare înainte (while):
    • Condiția este verificată înainte de a executa blocul de cod.
    • Exemplu:

while (condiție) {

    // Cod executat cât timp condiția este adevărată

}

  1. Buclele cu testare după (do-while):
    • Codul este executat cel puțin o dată, apoi condiția este verificată.
    • Exemplu:

do {

    // Cod executat cel puțin o dată

} while (condiție);

  1. Buclele determinate (for):
    • Se folosește când numărul de repetări este cunoscut.
    • Exemplu:

for (inițializare; condiție; actualizare) {

    // Cod executat

}


3. Exemple practice:


Exemplu 1: Afișarea primelor 10 numere naturale (buclele for, while, do-while)

Cu for:

#include <iostream>

using namespace std;

int main() {

    for (int i = 1; i <= 10; i++) {

        cout << i << ” „;

    }

    cout << endl;

    return 0;

}

Cu while:

#include <iostream>

using namespace std;

int main() {

    int i = 1;

    while (i <= 10) {

        cout << i << ” „;

        i++;

    }

    cout << endl;

    return 0;

}

Cu do-while:

#include <iostream>

using namespace std;

int main() {

    int i = 1;

    do {

        cout << i << ” „;

        i++;

    } while (i <= 10);

    cout << endl;

    return 0;

}


Exemplu 2: Calcularea sumei primelor n numere naturale

Problema: Citește un număr n de la utilizator și calculează suma numerelor de la 1 la n.

Cod în C++:

#include <iostream>

using namespace std;

int main() {

    int n, suma = 0;

    cout << „Introdu un numar: „;

    cin >> n;

    for (int i = 1; i <= n; i++) {

        suma += i;

    }

    cout << „Suma primelor ” << n << ” numere naturale este: ” << suma << endl;

    return 0;

}


Exemplu 3: Determinarea produsului numerelor impare de la 1 la n

Problema: Citește un număr n și calculează produsul numerelor impare de la 1 la n.

Cod în C++:

#include <iostream>

using namespace std;

int main() {

    int n, produs = 1;

    cout << „Introdu un numar: „;

    cin >> n;

    for (int i = 1; i <= n; i += 2) {

        produs *= i;

    }

    cout << „Produsul numerelor impare de la 1 la ” << n << ” este: ” << produs << endl;

    return 0;

}


Exemplu 4: Generarea unei serii Fibonacci

Problema: Afișează primele n numere Fibonacci.

Cod în C++:

#include <iostream>

using namespace std;

int main() {

    int n, t1 = 0, t2 = 1, urmator;

    cout << „Introdu numarul de termeni Fibonacci: „;

    cin >> n;

    cout << „Seria Fibonacci: ” << t1 << ” ” << t2 << ” „;

    for (int i = 3; i <= n; i++) {

        urmator = t1 + t2;

        cout << urmator << ” „;

        t1 = t2;

        t2 = urmator;

    }

    cout << endl;

    return 0;

}


4. Activități practice pentru elevi:

  1. Scrieți un program care calculează factorialul unui număr.
  2. Realizați un program care citește un număr și verifică dacă este prim.
  3. Scrieți un program care afișează toate numerele divizibile cu 3 de la 1 la 100.

5. Scheme logice:

  1. Buclele while:
    • Start -> Condiție? -> (DA -> Execută cod -> Reia) / (NU -> Stop).
  2. Buclele do-while:
    • Start -> Execută cod -> Condiție? -> (DA -> Reia) / (NU -> Stop).
  3. Buclele for:
    • Start -> Inițializare -> Condiție? -> (DA -> Execută cod -> Actualizare -> Reia) / (NU -> Stop).

6. Concluzie:

  • Structurile repetitive permit automatizarea și eficientizarea proceselor care necesită repetarea unor operații.
  • Alegerea tipului de buclă depinde de situație:
    • while pentru bucle cu condiție pre-verificată.
    • do-while pentru bucle cu cel puțin o iterație garantată.
    • for pentru bucle determinate.

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *