Informatică, întrebare adresată de D4V1Du, 7 ani în urmă

se citesc de la tastatura doua numere naturale a si b formate din maxim 9 cifre. Sa se determine cel mai mare divizor comun al numerelor a si b Ex: Pentru a=12 si b=8 se afiseaza 4.
RAPID DAU COROANA​

Răspunsuri la întrebare

Răspuns de bobita25
0

Răspuns:

#include <iostream>

using namespace std;

int cmmdc(int a, int b)

{

   if (b == 0)

       return a;

   return cmmdc(b, a % b);

}

int main()

{

   int a, b;

   cin >> a >> b;

   cout << cmmdc(a, b);

   return 0;

}

Explicație:

Acest program folosește un algoritm recursiv pentru a determina cel mai mare divizor comun. Funcția cmmdc primește ca argumente două numere a și b și întoarce cmmdc-ul acestora. Algoritmul funcționează prin împărțirea numărului mai mare la cel mai mic, iar rezultatul este cel mai mare divizor comun al restului. Acest proces se repetă până când restul este 0. În acest caz, ultimul număr care nu este 0 este cel mai mare divizor comun.

Alte întrebări interesante