# PBinfo #391 – Fractii – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

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 numărătorul şi numitorul 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 două cifre

Exemplu:
Intrare

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

11 3

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int main() {
    int n, a, b, p = 0, q = 1;
    cin >> n;
    for(int i = 1; i <= n; ++i) {
        cin >> a >> b;
        p = a * q + b * p;
        q = b * q;
        int x = p, y = q, r;
        while (x % y != 0) {
            r = x % y;
            x = y;
            y = r;
        } p = p / y, q = q / y;
    } cout << p << " " << q; 
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/391)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/391/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-391/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
