# PBinfo #1809 – powerrec – Rezolvare C++

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

## Enunț

Cerința
Prietenul nostru, Ionci, a învățat la scoală despre ridicarea la putere. Ajutați-l să calculeze \( a^b\), folosind o funcție recursivă.

Date de intrare
Programul citește de la tastatură numerele naturale a și b.

Date de ieșire
Programul va afișa pe ecran numărul P, reprezentând \( a^b\).

Restricții și precizări

0 ≤ P ≤ 2.000.000.000;
a + b > 0;
se recomandă realizarea unui subprogram recursiv.

Exemplu:
Intrare

5
4
Ieșire

625
Explicație
5 * 5 * 5 * 5 = 625.

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
int32_t _pow(int32_t a, int32_t b) {
    if (!b) return 1;
    return _pow(a, --b) * a;
}
int main() {
    int32_t a, b;
    cin >> a >> b;
    cout << _pow(a, b);
    return 0;
}
```

## Resurse

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