Un număr natural se numește perfect dacă el este egal cu suma divizorilor săi mai mici decât el. De ex
28 este un număr perfect pentru că 28=1+2+4+7+14. Să se determine toate numerele perfecte mai mici decât
un număr dat (de exemplu: 10000).
( IN C++)
Răspunsuri la întrebare
Răspuns de
0
Salut!
Ai rezolvarea in limbaj C++ mai jos
#include <iostream>
using namespace std;
int perfect(int n)
{
int s = 0;
for (int i = 1; i <= n / 2; i++)
{
if (n % i == 0)
{
s += i;
}
}
if (s == n)
{
return s;
}
else
{
return 0;
}
}
int main()
{
int n, s = 0;
cin >> n;
for (int i = 1; i <= n; i++)
{
if (perfect(i))
{
cout << i << " ";
}
}
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Informatică,
8 ani în urmă
Limba română,
9 ani în urmă
Engleza,
9 ani în urmă