中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c語言如何分解質因數程序

小億
92
2024-10-11 17:42:16
欄目: 編程語言

在C語言中,分解質因數的程序可以通過一個簡單的算法實現。以下是一個示例程序,它接受一個整數作為輸入,并輸出其所有質因數:

#include <stdio.h>
#include <stdbool.h>

// 函數聲明
void primeFactors(int n);
bool isPrime(int num);

int main() {
    int number;
    printf("請輸入一個整數: ");
    scanf("%d", &number);

    printf("質因數分解結果: ");
    primeFactors(number);

    return 0;
}

// 分解質因數的函數
void primeFactors(int n) {
    for (int i = 2; i <= n; i++) {
        // 如果i是n的因數,并且i是質數
        if (n % i == 0 && isPrime(i)) {
            printf("%d ", i);
            n /= i; // 更新n的值
        }
    }
}

// 判斷一個數是否為質數的函數
bool isPrime(int num) {
    if (num <= 1) {
        return false;
    }
    for (int i = 2; i * i <= num; i++) {
        if (num % i == 0) {
            return false;
        }
    }
    return true;
}

這個程序首先定義了一個primeFactors函數,它接受一個整數n作為參數,并輸出其所有質因數。在這個函數中,我們使用一個循環從2開始遍歷到n,并檢查每個數是否是n的因數以及是否是質數。如果是,我們就輸出這個數,并更新n的值。

我們還定義了一個輔助函數isPrime,用于判斷一個數是否為質數。這個函數接受一個整數num作為參數,并返回一個布爾值,表示num是否為質數。在這個函數中,我們首先檢查num是否小于等于1,如果是,則返回false。然后,我們使用一個循環從2開始遍歷到sqrt(num),并檢查每個數是否是num的因數。如果是,則返回false。如果循環結束后沒有找到任何因數,則返回true

main函數中,我們從用戶那里獲取一個整數,并調用primeFactors函數來分解其質因數。然后,我們輸出分解結果。

0
襄樊市| 济源市| 泰来县| 宁陕县| 黄梅县| 交口县| 邛崃市| 莲花县| 金溪县| 新余市| 肇庆市| 高州市| 中西区| 台前县| 雷波县| 柳河县| 金华市| 灵山县| 紫阳县| 长武县| 墨竹工卡县| 合山市| 泽库县| 镇雄县| 泾川县| 镇康县| 宜川县| 嘉善县| 怀安县| 富源县| 虞城县| 满洲里市| 白城市| 驻马店市| 克东县| 德江县| 普兰店市| 武定县| 于都县| 越西县| 和顺县|