Modul - 1 Clasa A XI-a
Modul - 1 Clasa A XI-a
extindere)
1.1. Utilizarea tipurilor de date fundamentale
Material explicativ:
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int varsta = 22;
double greutate = 68.5;
char initiala = 'D';
string nume = "Erika";
return 0;
}
Material explicativ:
Exerciții:
Internal
Exercițiul 2: Calcularea mediei a trei numere
Scrie un program care citește trei numere reale și calculează media lor aritmetică.
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
double num1, num2, num3, media;
cout << "Media celor trei numere este: " << media << endl;
return 0;
}
Material explicativ:
If-else: Folosit pentru a executa blocuri de cod condiționat, în funcție de valoarea unei
expresii booleene.
Switch: Alternativă la if-else pentru testarea valorilor unei variabile întregi sau de
tip caracter.
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int numar;
if (numar % 2 == 0) {
cout << numarul << " este par." << endl;
} else {
cout << numarul << " este impar." << endl;
}
return 0;
}
Internal
1.4. Structuri de control (bucle)
Material explicativ:
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 10; i++) {
cout << i << " ";
}
cout << endl;
return 0;
}
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int i = 1, suma = 0;
cout << "Suma numerelor pare de la 1 la 100 este: " << suma << endl;
return 0;
}
Internal
Material explicativ:
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int zi;
switch (zi) {
case 1: cout << "Luni" << endl; break;
case 2: cout << "Marti" << endl; break;
case 3: cout << "Miercuri" << endl; break;
case 4: cout << "Joi" << endl; break;
case 5: cout << "Vineri" << endl; break;
case 6: cout << "Sambata" << endl; break;
case 7: cout << "Duminica" << endl; break;
default: cout << "Numar invalid!" << endl;
}
return 0;
}
Tema: Calculator simplu Scrie un program care acționează ca un calculator simplu, capabil
să facă adunări, scăderi, înmulțiri și împărțiri. Programul trebuie să citească două numere și
să efectueze operația cerută de utilizator, utilizând un switch-case.
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
double num1, num2;
char oper;
Internal
cin >> oper;
cout << "Introdu al doilea numar: ";
cin >> num2;
switch (oper) {
case '+': cout << "Rezultatul: " << num1 + num2 << endl; break;
case '-': cout << "Rezultatul: " << num1 - num2 << endl; break;
case '*': cout << "Rezultatul: " << num1 * num2 << endl; break;
case '/':
if (num2 != 0)
cout << "Rezultatul: " << num1 / num2 << endl;
else
cout << "Eroare: Impartire la zero!" << endl;
break;
default: cout << "Operator invalid!" << endl;
}
return 0;
}
Material explicativ:
Operatori logici: Folosiți pentru a combina două sau mai multe expresii booleene.
Aceștia returnează o valoare de tip boolean (true sau false) și sunt foarte utili în
structurile condiționale.
o && (și logic): Adevărat dacă ambele expresii sunt adevărate.
o || (sau logic): Adevărat dacă cel puțin una dintre expresii este adevărată.
o ! (negare logică): Inversează valoarea unei expresii booleene (true devine
false și invers).
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int numar;
Internal
}
return 0;
}
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int a, b, c;
return 0;
}
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int a, b;
if (a > b) {
cout << a << " este mai mare decât " << b << endl;
} else if (a < b) {
cout << b << " este mai mare decât " << a << endl;
} else {
cout << a << " și " << b << " sunt egale." << endl;
}
Internal
return 0;
}
1.9. Funcții
Material explicativ:
return_type function_name(parameter_list) {
// corpul funcției
return value;
}
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int main() {
int a, b;
return 0;
}
Rezolvare (C++):
#include <iostream>
using namespace std;
bool estePrim(int n) {
if (n <= 1) {
Internal
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int numar;
if (estePrim(numar)) {
cout << numar << " este un numar prim." << endl;
} else {
cout << numar << " nu este un numar prim." << endl;
}
return 0;
}
1.10. Recursivitate
Material explicativ:
Exerciții:
Rezolvare (C++):
#include <iostream>
using namespace std;
int factorial(int n) {
if (n == 0 || n == 1) {
return 1;
}
return n * factorial(n - 1);
}
int main() {
int numar;
Internal
cout << "Factorialul lui " << numar << " este: " << factorial(numar) <<
endl;
return 0;
}
Rezolvare (C++):
#include <iostream>
using namespace std;
int fibonacci(int n) {
if (n == 0) {
return 0;
}
if (n == 1) {
return 1;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int n;
cout << "Al " << n << "-lea termen din seria Fibonacci este: " <<
fibonacci(n) << endl;
return 0;
}
Internal