ACM內部函式 數學問題 最大公約數最小公倍數

2021-07-11 03:57:57 字數 745 閱讀 8829

求最大公約數的兩種方法:

第一種方法:輾轉相除法

/**

輾轉相除法求最大公約數

有兩整數a和b:

① a%b得餘數c

② 若c=0,則b即為兩數的最大公約數

③ 若c≠0,則a=b,b=c,再回去執行①

例如求27和15的最大公約數過程為:

27÷15 餘1215÷12餘312÷3餘0因此,3即為最大公約數

*/int hcf(int a,int b)

return(a);

}

第二種方法:相減法

/**

相減法有兩整數a和b:

① 若a>b,則a=a-b

② 若a12 ) 15-12=3( 12>3 )

12-3=9( 9>3 ) 9-3=6( 6>3 )

6-3=3( 3==3 )

因此,3即為最大公約數

*/#includevoid main ( ) /* 相減法求最大公約數 */

最小公倍數求法:

最小公倍數要在最大公約數的基礎上運算,

最小公倍數=兩數的乘積除以最大公約數

/**

最小公倍數等於兩數的乘積除以

最大公約數

*/int lcd(int u,int v,int h)

python for練習最大公約數 最小公倍數

需求 輸入兩個數值 求兩個數的最大公約數和最小公倍數.最小公倍數 num1 num2 最大公約數 思路 1.最大公約數小於等於輸入兩個數中最小的數 2.利用迴圈,最後一次迴圈可以被兩個數同時整除的數為最大公約數。1.輸入兩個數值 num1 int input 第乙個數 num2 int input ...

求最大公約數和最小公倍 PHP

用程式求最大公約數和最小公倍數最容易想到的方法如下 求最大公約數 function max divisor a,b return 1 求最小公倍數 function min multiple a,b return a b 輾轉相除法求最大公約數 function max divisor2 a,b e...

CodeVS1012 最大公約數和最小公倍數問題

題目 題目描述 description 輸入二個正整數x0,y0 2 x0 100000,2 y0 1000000 求出滿足下列條件的p,q的個數 條件 1.p,q是正整數 2.要求p,q以x0為最大公約數,以y0為最小公倍數.試求 滿足條件的所有可能的兩個正整數的個數.輸入描述 input des...