C語言用歐幾里得演算法定義的求最大公約數的函式沒看懂,哪位大神

2021-03-22 02:59:33 字數 1999 閱讀 8572

1樓:id雞蛋炒韭菜

if(x換,使得x是兩數中最大值,y是最小值

while(y!=0) //演算法核心,首先用x模y,取得餘數,然後每次用除數模餘數,直到整除為止

關於擴充套件歐幾里得演算法有點不明白,請大神指教

用偽**表示歐幾里得求最大公約數的演算法

2樓:弈軒

求最大公約數常用"輾轉相除法"

如求m和n的最大公約數,都是正整數!

演算法如下:

1.若m餘數

3.1若r為0(餘數為0),則n為所求,結束!

3.2否則令m=n, n=r,重複步驟2。

簡單地說,就是兩個數大者÷小者取餘數,若餘數為零,則小者為所求;否則大者變小者,小者變餘數,如此反覆。

用歐幾里得演算法(輾轉相除法)求最大公約數,c語言程式設計

3樓:猴大俠來也

你的程式是正確的,

瑕疵在於

scanf("%d,%d",&m,&n);

scanf函式,雙引號內光寫格式就好了,不用寫逗號什麼的,多寫什麼程式執行的時候就要輸入什麼。如你所寫,執行時就應輸入:12,24 若你在12與24之間按的是空格或其他有可能影響到第二個變數取不到值。

所以建議改為

scanf("%d%d",&m,&n); 程式執行要求輸入時兩個數之間按空格回車隨你。

4樓:匿名使用者

if(m

r=m;

m=n;

n=r;

這裡缺了點什麼

改if(m

認同求採納,求經驗,求懸賞

不認同可以問,有求必應

5樓:匿名使用者

刪掉if(m

r=m;

m=n;

n=r;就好了

如何用歐幾里德演算法球32和24的最大公約數

6樓:匿名使用者

32和24的最大公約數(8)

32=4x8

24=3x8

所以32和24的最大公約數(8)

兩位數中,最大的歐數是

7樓:匿名使用者

兩位數最大的是99,最大的偶數是98,98除以2是48

8樓:奔向

98,最大的兩位數,偶數。。。

9樓:從來不游泳的魚

98~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

用歐幾里得演算法求最大公約數,求大神指導錯誤,好像有邏輯錯誤。。。。

10樓:匿名使用者

最後應該是while(r!=0)

11樓:匿名使用者

有無問題可以通過測試出來~

c語言中如何呼叫函式求最大公約數和最小公倍數

12樓:3d動畫師

# include

void main()

int fy(int x,int y)

return k;

}int fb(int x,int y)

return i;}

13樓:匿名使用者

#include

int main ()

p=n*m; //先將n和m的乘積儲存在p中, 以便求最小公倍數時用

while (m!=0) //求n和m的最大公約數

printf("hcf=%d\n",n);

是原來兩個整數的乘積

return 0;}

求用vc寫掃雷的演算法,要個掃雷的c語言演算法

呵呵,樓上的兄弟有點激動了。1。這個問題我告訴你一個思路,比如你按下一個方塊,它周圍有8個方塊,從中找出沒被翻開的並且沒有雷的方塊,把它翻開,然而,這些方塊每個周圍也都有8個位置,然後你就可以用剛才的處理方法來處理這些方塊,這樣反覆下去就是一個遞迴了,當然遞迴的結束條件就是這個方塊周圍不再有未被翻開...

用C語言計算分段函式的值,謝謝,C語言程式設計 求分段函式的值

你這bai題可真不容易噢,親自弄的,du還有不懂不,有直zhi接問我好了dao include main include double function double x int main void include int main return 0 不知 du道是這個意思不zhi?輸dao入一個x...

求C語言大神用的DEV C急急急

int sum int start,int count return num int main void printf sum d num return 0 求c語言大神 用的dev c 急急急!include int fib int n int main 求c語言大神 用的dev c 急急 inc...