Cel mai mare divizor comun (CMMDC) al unui vector
Lecție despre determinarea celui mai mare divizor comun al elementelor unui vector în C++.
În această lecție, vom învăța cum să calculăm cel mai mare divizor comun al elementelor unui vector utilizând C++.
Cerința problemei
Se citește de la tastatură un vector v
de n
elemente. Calculați și afișați cel mai mare divizor comun al tuturor elementelor vectorului.
Exemplu de intrare și ieșire:
Intrare:
n = 4, v = [12, 18, 24, 30]
Ieșire:
6
Explicația algoritmului
- Funcția pentru CMMDC: Se implementează o funcție pentru a calcula cel mai mare divizor comun a două numere utilizând algoritmul lui Euclid.
- Iterarea elementelor vectorului: Se calculează CMMDC pentru toate elementele vectorului.
- Afișarea rezultatului.
Codul sursă în C++:
#include <iostream>
using namespace std;
// Funcție pentru calcularea CMMDC
int cmmdc(int a, int b) {
while (b != 0) {
int r = a % b;
a = b;
b = r;
}
return a;
}
int main() {
int n, v[100];
// Citirea datelor
cout << "Introduceti dimensiunea vectorului n: ";
cin >> n;
cout << "Introduceti elementele vectorului: ";
for (int i = 0; i < n; i++) {
cin >> v[i];
}
// Calculăm CMMDC pentru toate elementele vectorului
int rezultat = v[0];
for (int i = 1; i < n; i++) {
rezultat = cmmdc(rezultat, v[i]);
}
// Afișăm rezultatul
cout << "Cel mai mare divizor comun al vectorului este: " << rezultat << endl;
return 0;
}