miercuri, 3 iulie 2024

Lecție practică Instrucțiunea for


Probleme propuse spre rezolvare

1. Elaborați un program care afișează pe ecran numerele de la 1 la 10, fiecare pe o linie nouă.

2. Elaborați un program care va afișa toate numerele din intervalul [a, b], unde a și b se citesc de la tastatură.

3. Elaborați un program care va afișa pe ecran factorialul unui număr citit de la tastatură.

4. Elaborați un program care va citi de la tastatură n numere, va calcula și afișa suma acestora.

5. Elaborați un program care va citi n numere întregi, va determina și afișa elementul maxim.

6. Elaborați un program care citește un număr n și afișează toate numerele mai mici sau egale cu n care sunt divizibile cu 3, dar nu cu 5.

7. Un profesor dorește să determine dacă un elev a promovat disciplina. El introduce notele elevului obținute pe parcursul semestrului și vrea ca programul să calculeze media aritmetică și să afișeze un mesaj corespunzător. Elaborați un program care:
- Citește de la tastatură un număr n — numărul de note;
- Citește n note (numere reale între 1 și 10);
- Calculează media aritmetică a notelor;
- Folosește instrucțiunea if pentru a afișa:
a. „Elevul a promovat” – dacă media ≥ 5;
b. „Elevul nu a promovat” – dacă media < 5.

8. Un contabil dorește să calculeze salariul total al unui angajat pentru mai multe luni. Dacă salariul lunar depășește 10.000 lei, se acordă un bonus de 10%. Elaborați un program care:
- Citește un număr n – numărul de luni;
- Pentru fiecare lună, citește salariul de bază;
- Dacă salariul > 10.000, aplică un bonus de 10%;
- Afișează salariul total acumulat.

9. Managerul unui magazin vrea să analizeze vânzările dintr-o săptămână. Dacă vânzarea zilnică depășește 5000 lei, se consideră o „zi profitabilă”. Elaborați un program care:
- Se citesc vânzările pentru n zile.
- Se calculează totalul vânzărilor și numărul de zile profitabile.
- Se afișează media zilnică și un mesaj:
a. „Vânzări excelente!” – dacă mai mult de jumătate din zile au fost profitabile;
b. „Necesită îmbunătățiri” – altfel.

10. Un client economisește o sumă într-un cont bancar. Se aplică o dobândă anuală de 5%. Elaborați un program care:
- citește suma inițială S și numărul de ani n.
- pentru fiecare an, se actualizează suma:
- suma = suma + suma*0,05
- Dacă la final suma > 150% din cea inițială, se afișează mesajul „Investiție reușită!”.

11. Utilizatorul efectuează mai multe operații la un ATM. Elaborați un program care va simulat ATM:
- soldul inițial este 1000 lei.
- se citește n – numărul de operații.
- pentru fiecare operație se citește un cod:
1 → Depunere
2 → Retragere
3 → Interogare sold
- switch tratează tipul de operație.
- se actualizează soldul în dependență de acțiunea utilizatorului.
- În cazul în care din soldul nu conține suma care se dorește a fi extrasă utilizatorul să fie anunțat că operațiunea nu poate fi admisă din cauza mijloacelor financiare indisponibile.

Succes! ❤️

Instrucțiunea repetitivă for

În programarea Java, structurile repetitive ne ajută să executăm același set de instrucțiuni de mai multe ori, fără a repeta codul. 
Una dintre cele mai utilizate structuri este instrucțiunea for, datorită clarității și eficienței sale.
  • știm de la început de câte ori vrem să repetăm o acțiune;
  • avem nevoie de un contor (de exemplu, o variabilă care crește sau scade la fiecare pas);
  • vrem să parcurgem o succesiune de valori (indici, numere, caractere etc.).
  • calculul sumei primelor n numere naturale;
  • afișarea unei liste de elemente;
  • generarea de tabele (ex. tabla înmulțirii);
  • prelucrarea datelor într-un vector sau matrice;
  • repetarea unei instrucțiuni de un anumit număr de ori.
Scop:
Se folosește atunci când:
Exemple tipice de aplicare:

Sintaxa:

for (expresie_initializare; expresie_conditie; expresie_iteratie) {

    // instrucțiuni

}

Semantica:

  1. Se execută expresia de inițializare (de obicei, o variabilă contor este inițializată).
  2. Se verifică expresia condiției.
    • Dacă este adevărată (true), se execută instrucțiunile din corpul buclei.
    • Dacă este falsă (false), bucla se oprește.
  3. După execuția corpului buclei, se evaluează expresia de iterație, apoi se revine la pasul 2. 
Exemplu:

Atenție!

Variabilele declarate în zona de inițializare sunt locale buclei for și nu pot fi utilizate în afara acesteia: 


Poți declara mai multe expresii separate prin virgulă: 

Oricare dintre cele trei componente poate fi omisă. Următoarele exemple sunt corecte, dar atenție mare la buclele infinite! În aceste cazuri, este necesar să controlezi ieșirea din buclă cu instrucțiunea break.



Să aveți o zi deosebită!
💝