藍橋杯備戰 質因數分解

2021-06-27 02:00:58 字數 742 閱讀 3147

思路:要理解質因數是什麼!那就先解釋一下什麼是質因數吧!質因數:每個合數都可以寫成幾個質素相乘的形式,這幾個質素被稱為該合數的質因數!現在再去理解什麼是質素,

質素:2再加上所有的素數,即質素是素數;什麼是素數:就是只能被1和它本身整除的數

理解好了數學概念,現在來說一下演算法吧!

看上面三個例子,由數學的計算知道,乙個數的質因數是用上面這樣的方法,一般我們按照上面的方法時,我們在會從到2到3到4...........一直遞增能找到能整除該數為止此時就像上面50,30,40,能被2整除,然後繼續尋找能整除(該數被2整除後剩下的因數),繼續按照這樣的思想迴圈下去,直到剩下的因子為1為止

#include

using namespace std;

int fun(int n)

else

i++; 

}cout

int a,b;

cin>>a>>b;

for(n=a;n<=b;n++)

fun(n);

return 0;

}

質因數分解

題目16 將乙個正整數分解質因數。例如 輸入90,列印出90 2 3 3 5。程式分析 對n進行分解質因數,應先找到乙個最小的質數k,然後按下述步驟完 成 1 如果這個質數恰等於n,則說明分解質因數的過程已經結束,列印出即可。2 如果n k,但n能被k整除,則應列印出k的值,並用n除以k的商,作為新...

質因數分解

短除法 求乙個數分解質因數,要從最小的質數除起,一直除到結果為質數為止。分解質因數的算式的叫短除法 和除法的性質差不多,還可以用來求多個個數的公因式 求 最大公因數的一種方法,也可用來求 最小公倍數。求幾個數最大公因數 的方法,開始時用觀察比較的方法,即 先把每個數的因數找出來,然後再找出公因數,最...

質因數分解

講乙個數分解為幾個質數相乘的結果 int a maxn 用來存質因數 int b maxn 用來存質因數的個數 int main if n 1 不能忘記這一步操作 輸出 第1種寫法 a a a b b b b c c printf 第一種寫法 for int i 1 i tot i else pri...