1. 程式人生 > >【c語言】(迴圈)找出1到10000的完全數

【c語言】(迴圈)找出1到10000的完全數

題目:

找出1到10000中的完全數

完全數:完全數的所有因數之和等於其本身(1不是完全數)
--------如:(6 = 1 + 2 + 3)

思路分析:

  1. 找出一個數的全部因數
  2. 判斷因數之和是否等於本身

程式碼實現:

#include<stdio.h>
int main()
{
 int num = 0 , i = 0 , sum = 0;           // i為迴圈體,sum用於加和一個數的因數 
 for(num = 2; num <= 10000; num++)
 {
  sum = 0;                             // 重置sum
  for(i = 1
; i <= num/2; i++) { if(num % i == 0) { sum = sum + i; } } if(num == sum) { printf("%d\t",num); } } return 0; }

執行結果:

在這裡插入圖片描述