# PBinfo #155 – cifmax – Rezolvare C++

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

## Enunț

Cerinţa
Scrieţi un program care citeşte de la tastatură un şir de cel mult 60 de caractere (litere mici şi mari ale alfabetului englez, cifre, puncte, virgule şi spaţii) şi afişează pe ecran cifra care apare de cele mai multe ori în şirul citit.

Date de intrare
Programul citeşte de la tastatură un şir de cel mult 60 de caractere.

Date de ieşire
Programul va afişa pe ecran cifra care apare de cele mai multe ori în şir.

Restricţii şi precizări

dacă şirul conţine mai multe cifre cu număr maxim de apariţii si va afişa cea mai mică
dacă şirul nu conţine cifre se va afişa NU.

Exemplu:
Date de intrare

Voi lua 9,5 la matematica 10 la informatica si 10 la romana 
Date de ieşire

0
Explicaţie

Cifrele 0 şi 1 apar de număr maxim de ori, dar 0 este mai mică.

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
int freq[11], contor = 0, maxim = 0;
char carac[300];
int main() {
    cin.getline(carac, 300);
    while (carac[contor] != '') {
        if (carac[contor] == '0') freq[0]++;
        if (carac[contor] == '1') freq[1]++;
        if (carac[contor] == '2') freq[2]++;
        if (carac[contor] == '3') freq[3]++;
        if (carac[contor] == '4') freq[4]++;
        if (carac[contor] == '5') freq[5]++;
        if (carac[contor] == '6') freq[6]++;
        if (carac[contor] == '7') freq[7]++;
        if (carac[contor] == '8') freq[8]++;
        if (carac[contor] == '9') freq[9]++;
        contor++;
    } int rez = -1;
    for (int i = 0; i <= 10; ++i)
        if (freq[i] > maxim)
            maxim = freq[i], rez = i;
    if (rez == -1) cout << "NU";
    else cout << rez;
    return 0;
}
```

## Resurse

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