# PBinfo #3076 – circular – Rezolvare C++

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

## Enunț

Cerința
Scrieți un program care citește un număr natural n și care să calculeze suma S a tuturor numerelor obținute prin permutări circulare la dreapta ale cifrelor lui n cu o poziție. 

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

Date de ieșire
Programul va afișa pe ecran numărul S, cu semnificația din enunț.

Restricții și precizări

1 ≤ n ≤ 2.000.000.000

Exemplu:
Intrare

123
Ieșire

666
Explicație
S-au citit n=123. Suma calculată este S=666 (=312+231+123).

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int main() {
    long long int n, S = 0, contor = 0, rez;
    cin >> n;
    while (n > 0) {
        S = S + n % 10;
        n = n / 10;
        contor = contor * 10 + 1;
    } rez = S * contor;
    cout << rez;
    return 0;
}
```

## Resurse

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