Să se scrie algoritmul prin care se afişează suma şi produsul divizorilor primi ai unui număr natural n care se introduce de la tastatură. 1

#include <iostream>

using namespace std;

int main() {

    int n;

    cout << „Introduceti un numar natural: „;

    cin >> n;

    int sum = 0, prod = 1;

    int d = 2;

    while (n > 1) {

        if (n % d == 0) {

            sum += d;

            prod *= d;

            n /= d;

        } else {

            d++;

        }

    }

    cout << „Suma divizorilor primi: ” << sum << endl;

    cout << „Produsul divizorilor primi: ” << prod << endl;

    return 0;

}

  1. Se citeste de la tastatura numarul natural n.
  2. Se initializeaza sum si prod cu 0 si 1, respectiv.
  3. Se incepe cautarea divizorilor primi a lui n de la 2.
  4. Daca divizorul curent d divide pe n, se aduna d la suma si se inmulteste cu produsul.
  5. Daca d nu divide pe n, se trece la urmatorul divizor.
  6. Se imparte n la d pentru a continua cautarea divizorilor.
  7. Se repeta pasii 4-6 pana cand n devine 1.
  8. Se afiseaza suma si produsul divizorilor primi gasiti.

Similar Posts

Lasă un răspuns

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