fbpx

Problema #947 – baza16 – Rezolvari PBInfo

de Mihai-Alexandru

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

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.

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n;
    cin >> n;
    int a[10];
    int p=0;
    while(n)
    {
        a[p]=n%16;
        n/=16;
        p++;
    }
    for(int i = p-1 ; i >= 0 ; --i)
    {
        if(a[i]<10)
        cout << a[i];
        else
        {
            if(a[i]==10)
            cout << "A";
            if(a[i]==11)
            cout << "B";
            if(a[i]==12)
            cout << "C";
            if(a[i]==13)
            cout << "D";
            if(a[i]==14)
            cout << "E";
            if(a[i]==15)
            cout << "F";
        }
    }
}
Comentarii

S-ar putea sa iti placa