Informatică, întrebare adresată de davidalexandru9, 9 ani în urmă

Cerinţa
Să se scrie un program care să determine cel mai mare divizor comun a două numere naturale citite de la tastatură.

Date de intrare
Programul citește de la tastatură două numere naturale a și b.

Date de ieşire
Programul afișează pe ecran numărul x, cel mai mare divizor comun al numerelor a și b.

Restricţii şi precizări
0 <= a, b < 1.000.000.000
dacă ambele numere sunt egale cu 0 se va afișa valoarea -1



Exemplu
Intrare

24 36
Ieșire

12


//aici e codul
#include

using namespace std;
int a,b,r;
int main()
{
cin>>a>>b;
if(a==0 && b==0) cout<<0;
else
{
r=a%b;
while(r)
{
a=b;
b=r;
r=a%b;
}
cout< }
return 0;

}

//o am de 80 de puncte pe pbinfo. ma poate ajuta cineva cu ceva modificari??

Răspunsuri la întrebare

Răspuns de alexubebe
0
Uite rezolvarea problemei:
Anexe:
Răspuns de Ddeny2
2
Asta e Algoritmul lui Euclid.  Si la algoritmul tau ar trebui sa pui long long (10000000) .Poti incerca cu Algoritmul prin scaderi repetate. 
citeste a ,b
daca a=o sau b=o atunci
                           Scrie a+b
                              altfel
                           cat timp a!=b executa
                                                    daca a>b atunci 
                                                                      a=a-b
                                                                      altfel
                                                                         b=b-a
                                 Scrie a.

alexubebe: ati vazut....va certati cu mn ca nu am facut bn si acm ati vazut ca pe pbinfo va da 100 p :)))
Ddeny2: nu , nu ma refeream la programul tau, la cum il fac eu :))
davidalexandru9: eu nu ma cert, dar am bagat si acum si tot 80
alexubebe: Bai, programul pe care lam facut eu o sa va dea 100 de puncte pe pbinfo
alexubebe: chiar eu l.am incercat
davidalexandru9: cel care l-ai modificat l-am bagat si pe acela am primit 80
alexubebe: ai gresit ceva la el asta.i sigur
alexubebe: chiar nu va sinchisiti sa rulati programul si sa vedeti ca va da bine cmmdc a doua numere?
davidalexandru9: si codul meu da bine, dar lipsteste vreo conditie
alexubebe: in fn
Alte întrebări interesante