# PBinfo #2757 – CifreZecimale1 – Rezolvare C++

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

## Enunț

Cerința
Se consideră șirul de cifre zecimale obținut prin scrierea consecutivă a numerelor naturale de la 100 la 999: 100101102103104105…995996997998999. Să se afișeze cifra ce apare pe poziția k în acest șir.

Date de intrare
Programul citește de la tastatură un număr natural n și apoi n numere naturale nenule, k.

Date de ieșire
Programul va afișa pe ecran, pe un singur rând și separate printr-un spațiu, n numere reprezentând cifrele din șir de pe pozițiile k, citite.

Restricții și precizări

1 ≤ n ≤ 100.000
1 ≤ k ≤ 2700

Exemplu:
Intrare

3
5 10 18
Ieșire

0 1 5 
Explicație
A cinceaa cifră din șir este 0, cea de pe poziția 10 este 1, iar cea de pe poziția 18 este 5.

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int n, c;
int main() {
    cin >> n;
    for (int i = 1; i <= n; i++) {
        int temp;
        cin >> temp;
        if (temp % 3 == 0) c = (temp % 300 / 3 + 9) % 10;
        else if (temp % 3 == 1) c = temp / 300 + 1;
        else c = temp % 300 / 30 ;
        cout << c << " ";
    } return 0;
}
```

## Resurse

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