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

Scrieţi un program Pascal/C/C++ pentru rezolvarea următoarei probleme:


Se citeşte de la tastatură, un număr natural n şi cele n elementele ale unui vector X care memorează numere naturale. Să se afişeze numerele perfecte din vector. Dacă nu există numere perfecte, se va afişa mesajul NU EXISTA. (Un număr este perfect dacă este egal cu suma divizorilor săi mai puţin el însuşi)

rezolvarea mea:

#include


using namespace std;

int x[100], d, el, n, i, s;

int main()

{

cin>>n;

for(i=1;i<=n;i++){

cin>>x[i];

}

for(i=1;i<=n;i++){

el=x[i];

for(d=1;d<=el/2;i++){

s=0;

if(el%d==0)

s+=d;

}

if(s==el)

cout< }


return 0;

}

ce este gresit?


j234mediplant: cout<

Răspunsuri la întrebare

Răspuns de Darrin2
0

Explicație:

#include <stdio.h>

int main()

{

int n,c=0;

scanf("%d",&n);

int x[n];

for(int i=1;i<=n;i++)

{

scanf("%d",&x[i]);

int S=1;

for(int j=2;j*j<=x[i];j++)

{

if(x[i]%j==0)

{

S=S+j+x[i]/j;

}

}

if(S==x[i] && x[i]!=1)

{

printf("%d ",x[i]);

c++;

}

}

if(c==0) printf("NU EXISTA");

}

Alte întrebări interesante