# PBinfo #947 – baza16 – Rezolvare C++

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

## Enunț

Cerința
În baza 16, cifrele unui număr pot fi 0, 1, 2, …, 9, A, B, C, D, E, F. Fiind dat n un număr natural, afișați scrierea lui n în baza 16.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieșire
Programul va afișa pe ecran scrierea în baza 16 a numărului n.

Restricții și precizări

1 ≤ n ≤ 2.000.000.000;
rezolvarea acestei probleme necesită utilizarea tablourilor sau a altor forme de memorare a unui număr variabil de valori.

Exemplu:
Intrare

3024
Ieșire

BD0
Explicație
3024 : 16 = 189 rest 0; 189 : 16 = 11 rest 13; 11 : 16 = 0 rest 11. Cum 11 = B, 13 = D, 0 = 0, rezultă BD0.

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int k = 0, n, v[11];
int main() {
    cin >> n;
    while (n != 0) {
        k++;
        v[k] = n % 16;
        n = n / 16;
    } for (int i = k; i >= 1; i--)
        if (v[i] < 10) cout << v[i];
        else {
        if (v[i] == 10) cout << 'A';
        if (v[i] == 11) cout << 'B';
        if (v[i] == 12) cout << 'C';
        if (v[i] == 13) cout << 'D';
        if (v[i] == 14) cout << 'E';
        if (v[i] == 15) cout << 'F';
    } return 0;
}
```

## Resurse

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