# PBinfo #366 – cifre3  – Rezolvare C++

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

## Enunț

Cerinţa
Se citește numărul natural n. Să se afișeze, în ordine crescătoare, numerele naturale mai mici decât n cu proprietatea că pătratul și cubul lor nu au cifre comune.

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

Date de ieşire
Programul afișează pe ecran numerele cerute, în ordine crescătoare, separate prin exact un spațiu.

Restricţii şi precizări

1 ≤ n ≤ 1000

Exemplu:
Date de intrare

20
Date de ieșire

2 3 8 9 14

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
bool pre(int n) {
    int ptr = n * n, cub = n * n * n;
    int a[11] = {0}, b[11] = {0};
    while (ptr > 0) {
        a[ptr % 10] = 1;
        ptr = ptr / 10;
    } while (cub > 0) {
        b[cub % 10] = 1;
        cub = cub / 10;
    } for (int i = 0; i <= 9; i++)
        if (a[i] == 1 && b[i] == 1)
            return false;
    return true;
}
int main() {
    int n;
    cin >> n;
    for (int i = 1; i <= n; i++)
        if (pre(i))
            cout << i << " ";
    return 0;
}
```

## Resurse

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