1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #include <stdio.h> #include <conio.h> void main() { int n, i = 1, S = 0; printf("Nhap n: "); scanf("%d",&n); while (i < n) { if(n % i == 0) { S = S + i; } i++; } if(S == n) { printf("La so hoan thien!"); }else { printf("Khong la so hoan thien!"); } getch(); } /* Ý tưởng: tìm các ước số của n nhỏ hơn chính n, rồi đem cộng các ước số vừa tìm lại mà bằng n là "Số hoàn thiện" ngược lại! */ |
