La somme des facteurs d'un certain nombre, à l'exception du nombre principal, est égale au nombre lui - même Ce problème est plus pratique à diviser,Mais je multiplie par,Voici mon code.,Je me demande ce qui ne va pas,Merci beaucoup.!
Exemple6=1Multiplier par6- Oui.=2Multiplier par3Et6=1+2+3,Et6C'est parfait.
EntréeL,R
Produits
Dans la Section【L,R】Tous les entiers de

#include <stdio.h>
int main() {
int L, R, i, z, n, j;
int k = 0, h = 0;
scanf("%d%d", &L, &R);
n = z / 2;
for (z = L; z <= R; z++) {
for (i = 0; i < n; i++) {
for (j = n; j < z; j++) {
if (z == (i * j)) {
k = k + i;
h = h + j;
}
}
}
if (z == (k + h))
printf("%d", z);
}
return 0;
}
Notes ajoutées, Vous vous référez à la modification suivante
int main() { int L, R, i, z = 0, n, j; int k = 0, h = 0; scanf("%d%d", &L, &R); for (z = L; z <= R; z++) { n = sqrt(z); k = 0; h = 0; for (i = 1; i <= n; i++) { for (j = n; j <= z; j++) { if (z == (i * j)) { if(i != z) { k = k + i; } if(j != z) { h = h + j; } } } } if (z == (k + h)) printf("%d", z); } return 0;}
Mes résultats de test :

#include<stdio.h>int main(){ int i,j,k=0,a[1000],t,n,n2; printf("Veuillez saisir un numéron:"); scanf("%d%d",&n,&n2); for(i=n; i<=n2; i++) { t=i; for(j=1; j<i; j++) { if(i%j==0) t-=j; } if(t==0) { a[k]=i; k++; } } if(k!=0) { for(i=0; i<k; i++) { printf("%d ",a[i]); } } else { printf("No!"); } return 0;}
#include <stdio.h>int main(){ int L, R, i, z, n; scanf("%d%d", &L, &R); for (z = L; z <= R; z++) { n = 0; for (i = 1; i < z; i++) { if (z % i == 0) { n += i; } } if (z == n) printf("%d\n", z); } return 0;}