Informatică, întrebare adresată de evelina8639, 8 ani în urmă

se considera numarul natural N. sa se scrie un program care: a) calculeaza suma si produsul divizilor acestui numar. b)afiseaza divizorii numarului N si numarul acesta​

Răspunsuri la întrebare

Răspuns de andriesboss92
3

Răspuns:

#include <iostream>

using namespace std;

int main()

{

   int N, produs=1, suma=0, nr=0, i=0;

   cin>>N;

   for(i=1;i<=N;i++)

       if(N%i==0)

       {

           suma=suma+i; // suma divizorilor

           produs=produs*i; // produsul divizorilor

           nr=nr+1; // cati divizori exista

       }

   cout<<"a) Suma divizorilor este: "<<suma;

   cout<<endl;

   cout<<"Produsul este: "<<produs;

   cout<<endl;

   cout<<"b) Numarul "<<N<<" are "<<nr<<" divizori"<<endl;

   cout<<"Acestia sunt: ";

   for(i=1;i<=N;i++)

       if(N%i==0)

           cout<<"[ "<<i<<" ] ; ";

}

Explicație:

Divizorii unui numar incep de la 1 si se termina la numarul insusi.

Pentru ca un numar sa aiba divizori, acesta trebuie sa se imparta exact la un alt numar, ceea ce inseamna ca daca N : X are restul 0 => X este divizorul lui N.

De exemplu, in program, pentru N=45 se va afisa pe ecran:

a) Suma divizorilor este: 78

Produsul este: 91125

b) Numarul 45 are 6 divizori

Acestia sunt: [ 1 ] ; [ 3 ] ; [ 5 ] ; [ 9 ] ; [ 15 ] ; [ 45 ]

Alte întrebări interesante