Răspuns :
#include <iostream>
using namespace std;
int main()
{
int numarul, sumaDivizorilor=0;
cout<<"Numarul="; cin>>numarul;
if (numarul>=0)
{
for (int divizor=1; divizor<=numarul; divizor++)
if (numarul%divizor==0)
sumaDivizorilor += divizor;
}
else
{
for (int divizor=-1; divizor>=numarul; divizor--)
if (numarul%divizor==0)
sumaDivizori += divizor;
}
cout<<"Suma divizorilor este "<<sumaDivizorilor;
return 0;
}
using namespace std;
int main()
{
int numarul, sumaDivizorilor=0;
cout<<"Numarul="; cin>>numarul;
if (numarul>=0)
{
for (int divizor=1; divizor<=numarul; divizor++)
if (numarul%divizor==0)
sumaDivizorilor += divizor;
}
else
{
for (int divizor=-1; divizor>=numarul; divizor--)
if (numarul%divizor==0)
sumaDivizori += divizor;
}
cout<<"Suma divizorilor este "<<sumaDivizorilor;
return 0;
}
Iti ofer un algoritm in C++ mai eficient.Succes!
#include <iostream>
using namespace std;
int n , d;
long long s = 0;
int main()
{
cin >> n;
for(d=1 ; d*d<n ; d++)
if(n % d == 0)
s = s + d + n / d;
if(d * d == n)
s = s + d;
cout << s;
return 0;
}
#include <iostream>
using namespace std;
int n , d;
long long s = 0;
int main()
{
cin >> n;
for(d=1 ; d*d<n ; d++)
if(n % d == 0)
s = s + d + n / d;
if(d * d == n)
s = s + d;
cout << s;
return 0;
}
Vă mulțumim că ați accesat site-ul nostru dedicat Informatică. Sperăm că informațiile furnizate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag să reveniți și nu uitați să ne salvați la favorite!