349
Cerinţa
Să se scrie un program care afișează divizorii comuni ai 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, în ordine crescătoare, divizorii comuni ai numerelor a
și b
, separați printr-un spațiu.
Restricţii şi precizări
0 < a, b < 1.000.000.000
Exemplu1:
Intrare
24 36
Ieșire
1 2 3 4 6 12
#include <bits/stdc++.h> using namespace std; void rezolvare() { unsigned long long a,b,r,d; cin>>a>>b; if(a==0) d=b; else if(b==0) d=a; else {while(b!=0) { r=a%b; a=b; b=r; } d=a; } for(int i=1;i<=d;i++) { if(d%i==0) cout<<i<<" "; } } int main() { rezolvare(); return 0; }
Comentarii