|

Se citeşte un număr natural n. Să se afişeze toate numerele mai mici decât n care sunt egale cu suma pătratelor cifrelor lor. 16

#include <iostream>

using namespace std;

int main()

{

    int n;

    cout << „Introduceti numarul n: „;

    cin >> n;

    for (int i = 1; i < n; i++)

    {

        int suma_patrate_cifre = 0;

        int auxiliar = i;

        while (auxiliar != 0)

        {

            int cifra = auxiliar % 10;

            suma_patrate_cifre += cifra * cifra;

            auxiliar /= 10;

        }

        if (i == suma_patrate_cifre)

        {

            cout << i << endl;

        }

    }

    return 0;

}

Programul incepe prin citirea numarului n. Apoi, cu ajutorul unui for, se parcurg toate numerele de la 1 la n-1.

Pentru fiecare numar, se calculeaza suma patratelor cifrelor cu ajutorul unui while. Pentru a calcula suma patratelor cifrelor, se initializeaza variabila suma_patrate_cifre cu 0, iar apoi se parcurg cifrele numarului curent de la dreapta la stanga. Cu fiecare iteratie, cifra curenta este ridicata la patrat si adaugata la suma_patrate_cifre.

Dupa ce s-a calculat suma patratelor cifrelor, se verifica daca numarul este egal cu aceasta suma. Daca da, atunci numarul este afisat cu ajutorul functiei cout.

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *