Algoritm c++
Am nevoie de un algoritm rapid care verifica daca un numar este perfect sau nu .
Atentie ! numar perfect, NU patrat perfect .
Pe acesta l-am facut eu, dar merge incet :
#include
using namespace std;
int n,i,s;
int main()
{
cin>>n;
s=0;
for(i=1;i<=n/2;i++)
{
if(n%i==0)
{
s=s+i;
}
}
if(s==n)
{
cout<<"perfect" }
else
{
cout<<"nu e perfect" }
return 0;
}
Răspunsuri la întrebare
Răspuns de
2
e facut optim, nu cred ca il mai poti optimiza. Mult succes!
Emil1234:
Ai putea totusi sa ii mai faci ceva: II dai lui s valoarea 1 ( s=1; in loc de s=0; ) si apoi incepi cu for(i=2;i<=n/2;i++) in loc de for(i=1;i<=n/2;i++) :D
Alte întrebări interesante
Biologie,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă