c語言程式設計如何求最大公約數,C語言程式設計如何求最大公約數

2021-05-10 21:06:13 字數 3010 閱讀 9733

1樓:匿名使用者

源程式如下:

#include

#include

int fun_y(int,int);

int main()

int fun_y(int x,int y)return i;

}忙了半天,**分採納,謝謝了

2樓:匿名使用者

//常規方法

#include "stdio.h"

int main()

while(d2!=0);

printf("最大公約數是:%d",d1);

}//遞迴法

#include "stdio.h"

int fun(int d1,int d2)int main()

3樓:董俊錕

#include

int main()

if(num1 < num2)

while(b > 0)

printf("最大公約數是%d\n",a);

return 0;}

4樓:匿名使用者

#include

int main()

}printf("\n%d和%d的最大公約數是 %d",m,n,max);

return 0;

}int min(int x,int y)這是源**。

c語言程式設計 求最大公約數!

5樓:陳兵

則根本不是求最大公約數,你是判斷m,n中最大的值進行輸出而已

參見

由各種不同方法的**

c語言程式設計如何求最大公約數?

6樓:河蟹蛇薈

最大公約數演算法:

(1)輾轉相除法

兩整數a和b:

① a%b得餘數c

② 若c=0,則b即為兩數的最大公約數,結束③ 若c≠0,則a=b,b=c,再回去執行①(2)相減法

兩整數a和b:

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

② 若a③ 若a=b,則a(或b)即為兩數的最大公約數,結束④ 若a≠b,則再回去執行①

(3)窮舉法:

① i= a b中的小數

② 若a,b能同時被i整除,則i即為最大公約數,結束③ i--,再回去執行②

c語言程式設計 求最大公約數

c語言程式設計-求最大公約數

7樓:匿名使用者

把倒數第三句「i=i+1」去掉就可以得到正確的結果了,因為break之後不會執行i--操作了

或者使用輾轉相除的方法:

#include

void main()

temp = a%b;

while(temp)

printf("%d,%d的最大公約數為: %d",m,n,b);

printf("%d,%d的最小公倍數為: %d",m,n,m*n/b);}

8樓:靜楓緣

//輾轉相除法是古希臘求兩個正整數的最大公約數的,也叫歐幾里德演算法,其方法是用較大的數除以較小的數,上面較小的除數和得出的餘數構成新的一對數,繼續做上面的除法,直到出現能夠整除的兩個數,其中較小的數(即除數)就是最大公約數。以求288和123的最大公約數為例,操作如下:288÷123=2餘42 123÷42=2餘3942÷39=1餘3 39÷3=13所以3就是288和123的最大公約數。

//#include

int main()

printf("%d\n",c);

return 0;

9樓:匿名使用者

基本原理如下:

用歐幾里德演算法(輾轉相除法)求兩個數的最大公約數的步驟如下:

先用小的一個數除大的一個數,得第一個餘數;

再用第一個餘數除小的一個數,得第二個餘數;

又用第二個餘數除第一個餘數,得第三個餘數;

這樣逐次用後一個數去除前一個餘數,直到餘數是0為止。那麼,最後一個除數就是所求的最大公約數(如果最後的除數是1,那麼原來的兩個數是互質數)。

例如求1515和600的最大公約數,

第一次:用600除1515,商2餘315;

第二次:用315除600,商1餘285;

第三次:用285除315,商1餘30;

第四次:用30除285,商9餘15;

第五次:用15除30,商2餘0。

1515和600的最大公約數是15。

10樓:匿名使用者

輾轉相除法還是首選的方法啊、它有效的減少了運算的時間複雜度。。

11樓:小童鞋_成

ddddddddddddddd

12樓:

int getcd(int u,int v)

return u;}

13樓:凌風

#include

void main()

{int m,n,k;

printf(

c語言程式設計,求最大公約數

14樓:匿名使用者

#include

void main()

{int zdgy(int m,int n);

int x,y;

printf(

15樓:匿名使用者

#include

#include

int main()

i = a; j = b;

while (j != 0)

printf("最大公約數%d ", i);

printf("最小公倍數%d", (a*b)/i);

printf("\n");

return 0;}

c語言,輸入倆個正整數n和m,求其最大公約數和最小公倍數

include include int main printf 兩個數的最大公約數為 d i else printf 兩個數的最大公約數為 d i if m n printf 兩個數的最小公倍數為 d c else printf 兩個數的最小公倍數為 d c return 0 include voi...

求兩個數的最大公約數與最小公倍數的C程式,下面我寫的,麻煩幫我改一下,謝謝

公約數bai演算法給你換了du 你那個不好,而且答案輸zhi 出了兩遍 dao 你是回函式宣告放錯位置答了,而且宣告的和真實函式不匹配 include int gongyueshu int x,int y int gongbeishu int x,int y,int t void main int ...

用java語言求mn的最大公約數三種方法

1.從1開始迴圈。分別求出m n的約數。找出最大公約數。2.判斷m n的大小,從較小內的開始迴圈容,每次減一,判斷是否為公約數。如果是,則為最大公約數,break 3.2反過來,從小到大迴圈,找最大的。公約數判斷 m i 0 n i 0。舉第二個例子 public class test return...