Salut tous. j'ai fait un programme en C pour me donner les dix premiers nombres parfait mais il me donne selement les trois premiers.
voila le programme:
Code:#include<stdio.h> unsigned Testparfi(unsigned N) { unsigned i,s=1,r,n; for(i=2;i<N;i++) { r=N%i; if (r==0) s=s+i; } if(s==N) r=1; else r=0; return r; } main (void) { unsigned i=2,k=0; while(k<=10) { if (Testparfi(i)==1) { k++; printf("%d \n",i); } i++; } printf(" k=%d",k); }
-----