/* https://petlja.org/biblioteka/r/Problems/GCDLCM */ /* Tekst zadatka -> Data su dva prirodna broja a i b. Odrediti njihov najveci zajednicki delilac i najmanji zajednicki sadržalac. Ulaz: Prvi i jedini red standardnog ulaza sadrži dva prirodna broja a i b razdvojena razmakom. izlaz: U prvom redu standradnog izlaza ispisati najveci zajednicki delilac brojeva a i b. U drugom redu standardnog izlaza ispisati namanji zajednicki sadržalac brojeva a i b. Ogranicenja: 1 <= a, b <= 1.000.000.000 Primer Ulaz 12 18 izlaz 6 36 Objašnjenje primera (12, 18) = 6, [12, 18] = 36. Napomena: Najmanji zajednicki sadržalac može ispasti iz opsega 32-bitnog tipa podataka. Koristiti 64-bitne tipove podataka (int64 u Pascal-u, odnosno long long u C/C++-u). */ #include using namespace std; int main() { long long x, y, z, veci, manji, nzd, nzs; cin>>x>>y; if(x>y) { veci=x; manji=y; } else { veci=y; manji=x; } while(manji>0) { z=veci%manji; veci=manji; manji=z; } // nzd je ono u promenjivoj manji nzd = veci; nzs = (x*y)/nzd; cout<