Non riesco a fare la fattorizzazione del numero che metto in input me lo potreste controllare?
int n,r,i,d4,d5,d=0,r2;
int main(int argc, char *argv[])
{
do
{
printf("Inserire il numero da controllare se sia perfetto >> ");
scanf("%d", &n);
}while(n<0);
r=n%2;
if(r==0)
{ d5=n/2;
printf("I suoi divisori sono:\n");
for(i=0;i<d5;i++)
{
d=d+i;
printf("%d\n",d);
}
printf("\nIl numero %d e' perfetto",n);
}else{
d4=n/3;
r2=n%3;
if(r2==0)
{ printf("I suoi divisori sono:\n");
for(i=0;i<d4;i++)
{
d=d+i;
printf("%d\n",d);
}
printf("\nIl numero %d e' perfetto",n);
}else{
printf("\nIl numero %d non e' perfetto",n);
}
}
return 0;
}