溫馨提示×

c語言怎么判斷是否為完數

小億
179
2024-05-16 18:28:18
欄目: 編程語言

在數論中,完數是指一個數等于它的所有因子之和。例如,6是一個完數,因為它的因子為1、2、3,而1+2+3=6。

判斷一個數是否為完數的方法如下:

  1. 找出這個數的所有因子。
  2. 計算這些因子的和。
  3. 判斷這個和是否等于這個數本身。

下面是一個用C語言編寫的判斷一個數是否為完數的程序示例:

#include <stdio.h>

int isPerfect(int num) {
    int sum = 0;
    
    // 找出所有因子并計算它們的和
    for (int i = 1; i < num; i++) {
        if (num % i == 0) {
            sum += i;
        }
    }
    
    // 判斷和是否等于這個數本身
    if (sum == num) {
        return 1; // 是完數
    } else {
        return 0; // 不是完數
    }
}

int main() {
    int num;
    
    printf("請輸入一個整數:");
    scanf("%d", &num);
    
    if (isPerfect(num)) {
        printf("%d 是一個完數。\n", num);
    } else {
        printf("%d 不是一個完數。\n", num);
    }
    
    return 0;
}

在這個程序中,isPerfect函數用于判斷一個數是否為完數,main函數用于輸入一個整數并輸出判斷結果。您可以將您想要判斷的數輸入到程序中進行測試。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女