# PBinfo #2409 – ProdusXL – Rezolvare C++

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

## Enunț

Cerința
Numim  număr mare un număr care conține prea multe cifre pentru a fi memorat în tipurile existente, și număr mic un număr care poate fi memorat în acestea. 
Se dau două numere, unul mare și unul mic, ambele pozitive. Calculați produsul lor.

Date de intrare
Fișierul de intrare produsxl.in conține pe prima linie numărul mare x, pentru care se precizează mai întâi numărul de cifre și apoi cifrele sale, separate prin câte un spațiu, iar pe a doua linie numărul mic y.

Date de ieșire
Fișierul de ieșire produsxl.out va conține pe prima linie numărul P, reprezentând produsul celor două numere din fișierul de intrare.

Restricții și precizări

numărul mare are cel mult 100 de cifre
numărul mic este mai mic decât 1.000.000.000
cifrele numărului mic nu sunt separate prin spații
cifrele rezultatului nu vor fi separate prin spații

Exemplu:
produsxl.in

20 7 8 5 3 7 6 7 1 4 6 9 9 4 3 4 6 6 9 9 9
123
produsxl.out

9660133590803046440877
Explicație
78537671469943466999 * 123 = 9660133590803046440877

## Cod sursă C++

```cpp
#include <fstream>
using namespace std;
ifstream fin("produsxl.in");
ofstream fout("produsxl.out");
int x[120];
int main()
{
    int i, n;
    long long r,y;
    fin>>n;
    for(i=n; i>=1; i--)
    {
        fin>>x[i];
    }
    fin>>y;
    if(y==0)
    {
        n=1;
        x[1]=0;
    }
    else
    {
        r=0;
        for(i=1; i<=n ; i++)
        {
            r=r+x[i]*y;
            x[i]=r%10;
            r/=10;
        }
        while(r>0)
        {
            n++;
            x[n]=r%10;
            r=r/10;
        }
    }
    for(i=n; i>=1; i--)
    {
        fout<<x[i];
    }
    fin.close();
    fout.close();
    return 0;
}
```

## Resurse

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