# PBinfo #2318 – conversie-b-10 – Rezolvare C++

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

## Enunț

Cerința
Se dau două numere n și b, unde b este o bază de numerație, iar n un număr reprezentat în baza b. Să se afișeze numărul obținut prin transformarea lui n din baza b în baza 10. 

Date de intrare
Fișierul de intrare conversie_b_10.in conține pe prima linie numerele n și b, separate prin spații.

Date de ieșire
Fișierul de ieșire conversie_b_10.out va conține pe prima linie numărul nb, reprezentând transformarea lui n din baza b în baza 10

Restricții și precizări

n este un număr pozitiv cu cel mult 7 cifre
2 ≤ b ≤ 10
datele de intrare sunt corecte

Exemplu:
conversie_b_10.in

1101 2
conversie_b_10.out

13 
Explicație
 13 reprezentat în baza 2 este 1101.

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
ifstream in("conversie_b_10.in");
ofstream out("conversie_b_10.out");
int main() {
    int n, b, nr = 1, v[10], temp = 0; in >> n >> b;
    while (n != 0) {
        v[temp] = n % 10;
        n = n /10;
        temp++;
    } nr = v[temp - 1];
    for (int i = temp - 2; i >= 0; i--) nr = nr * b + v[i];    
    out << nr;
    return 0;
}
```

## Resurse

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