C語言例項—一個數如果恰好等於它的因子之和,這個數就稱為完數。(gcc編譯)
阿新 • • 發佈:2018-12-05
1.題目
一個數如果恰好等於它的因子之和,這個數就稱為完數。例如,6的因子是1,2,3,而6=1+2+3,因此6為完數。程式設計序找出1000之內所有的完數,並按下列格式輸出其因子:6 its factors are 1,2,3
2.程式碼
#include<stdio.h> int main() { int i, j, sum; /* i表示要判斷的數,j表示因子,sum表示因子之和*/ for (i = 2; i <= 1000; i++) { sum = 1; for (j = 2; j <= i / 2; j++) if (i%j == 0) /* 判斷i能否被j整除,能的話j即為因子 因子不包括自身 */ sum += j; if (sum == i) /* 判斷此數是否等於因子之和 */ { printf("%d its factors are 1, ", i); /* 輸出該數 */ for (j = 2; j <= i / 2; j++) if (i%j == 0)printf("%d, ", j); /* 輸出因子 */ printf("\n"); } } return 0; }
3.編譯、執行
gcc demo_6.7.c -o demo_6.7
./demo_6.7