# PBinfo #2081 – Parsare – Rezolvare C++

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

## Enunț

Cerința
Se citesc numere din fișier pâna când nu mai există numere de citit. Să se afișeze cel mai mare dintre ele.

Date de intrare
Fișierul de intrare parsare.in conține pe prima linie numerele, delimitate prin cel puțin un spațiu.

Date de ieșire
Fișierul de ieșire parsare.out va conține pe prima linie numărul M, reprezentând elementul maxim.

Restricții și precizări

se vor citi maximum 10.000.000 numere.
numerele de pe a doua linie a fișierului de intrare vor fi mai mici decât 100.000 și mai mari decât -100.000.

Exemplu:
parsare.in

3 2 5 -1 5
parsare.out

5
Explicație
În fișierul de intrare sunt 5 numere, iar elementul maxim este 5.

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
int readInt ()
{
    bool minus = false;
    int raspuns = 0;
    char c;
    while (true)
    {
        c = getchar();
        if (c == EOF) return 100001;
        if (c == '-')
        {
            minus = true;
            break;
        }
        if (c>='0' && c<='9')
        {
            raspuns = c-'0';
            break;
        }
    }
    while (true)
    {
        c = getchar();
        if (c<'0' || c>'9') break;
        raspuns = 10*raspuns + c-'0';
    }
    if (minus == true) return -raspuns;
    return raspuns;
}
int main()
{
    freopen ("parsare.in", "r", stdin);
    freopen ("parsare.out", "w", stdout);
    int x, maxim = -100001;
    while (true)
    {
        x = readInt();
        if (x == 100001)
        {
            cout << maxim;
            return 0;
        }
        maxim = max(maxim, x);
    }
    return 0;
}
```

## Resurse

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