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

Cerinţa
Se dau n perechi de numere naturale, nenule, fiecare reprezentând câte o fracţie. Calculaţi suma celor n fracţii, aducând rezultatul la forma ireductibilă.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi n perechi de numere naturale, reprezentând numitorul şi numărătorul unei fracţii.

Date de ieşire
Programul afișează pe ecran numerele P Q, separate prin exact un spaţiu, reprezentând numărătorul şi numitorul fracţiei sumă, adusă la forma ireductibilă.

Restricţii şi precizări
1 ≤ n ≤ 10
numărătorul şi numitorul fiecărei fracţii sunt numere naturale cu cel mult 2 cifre



Exemplu
Intrare

4
1 3
5 6
1 2
4 2
Ieșire

11 3

Răspunsuri la întrebare

Răspuns de express
5
#include <bits/stdc++.h>
using namespace std;
int n, numitor1, numarator1, a, b, i, d, im, r;
int main()
{
    cin >> n;
    cin >> numarator1 >> numitor1;
    for(i = 2; i <= n; i ++)
    {
        cin >> a >> b;
        numarator1 = a * numitor1 + numarator1 * b;
        numitor1 = b * numitor1;
        d = numarator1;
        im = numitor1;
        r = d % im;
        while(r)
        {
            d = im;
            im = r;
            r = d % im;
        }
        numarator1 = numarator1 / im;
        numitor1 = numitor1 / im;
    }
    cout << numarator1 << " " << numitor1;
    return 0;
}


MadalinaMadutaa: Merci!
MadalinaMadutaa: Nu am invatat biblioteca asta: #include <bits/stdc++.h>
MadalinaMadutaa: Nu merge cu <iostream>?
express: e universala..le inlocuieste pe toate celelalte...
express: ba da...merge si cu <iostream>
MadalinaMadutaa: Ok. mersi!
Alte întrebări interesante