Ajutor!
Realizati un program c++
Un număr natural este pseudoperfect dacă este divizor al sumei divizorilor săi.
Să se scrie un program care verifică dacă un număr natural citit de la tastatură este pseudoperfect.Programul citește de la tastatură numărul n.Programul afișează pe ecran mesajul DA, dacă n este număr pseudoperfect, respectiv NU, în caz contrar.
Restrictii:
0 < n < 1.000.000.000
As vrea va rog frumos sa ma ajutati cu un program cu timp de executare cat mai rapid.
Va rog frumos!!!
Răspunsuri la întrebare
Răspuns de
9
#include <iostream>
using namespace std;
int main(void)
{
int suma_diviz, numar;
cin >> numar;
suma_diviz = 1 + numar; // numar este divizibil cu 1 si el insusi
for (int i = 2; i <= numar / 2; ++i)
{
if (numar % i == 0)
{
suma_diviz += i;
}
}
if (suma_diviz % numar == 0)
{
cout << "DA";
}
else
{
cout << "NU";
}
return 0;
}
using namespace std;
int main(void)
{
int suma_diviz, numar;
cin >> numar;
suma_diviz = 1 + numar; // numar este divizibil cu 1 si el insusi
for (int i = 2; i <= numar / 2; ++i)
{
if (numar % i == 0)
{
suma_diviz += i;
}
}
if (suma_diviz % numar == 0)
{
cout << "DA";
}
else
{
cout << "NU";
}
return 0;
}
Alte întrebări interesante
Limba română,
9 ani în urmă
Studii sociale,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
10 ani în urmă
Limba română,
10 ani în urmă