最大公約最小公倍數

用C語言求兩個數的最大公約數和最小公倍數
[日期:2012-04-06] 來源:Linux社區  作者:junjieguo

 
 
求最大公約數,就是求較小的一個數的約數同時也能被較大的數整除,把他求到最大就可以了。求最小公倍數,就是求較大的一個數的倍數(同時也能整除較小的數),求最小的。

1、

1."># include <stdio.h> 
2. 
3.int  main(void)  4.{ 
5.    int x, y,temp;  6.    int r;   7.    printf("請輸入兩個正整數:\n");  8.    scanf("%d %d", &num1, &num2);  9.    r = num1 % num2; 
10.    temp = num2; 
11.    while(r!=0)  12.    { 
13.        num1 = num2; 
14.        num2 = r; 
15.        r = num1 % num2; 
16.    } 
17.printf("它們的最大公約數爲:%d\n", num2);  18.    printf("它們的最小公倍數爲:%d\n", num1*temp/num2);  19.     
20.    return 0;  21.} 
2、

1.# include <stdio.h>  
2. 
3.int  main(void)  4.{ 
5.    int x, y, num1, num2, temp;  6.     
7.    printf("請輸入兩個正整數:\n");  8.    scanf("%d %d", &num1, &num2);  9.if(num1 < num2)  10.    { 
11.        temp = num1; 
12.        num1 = num2; 
13.        num2 = temp; 
14.    } 
15.    x = num1; 
16.    y = num2; 
17.    while(y != 0)  18.    { 
19.        temp = x%y; 
20.        x = y; 
21.        y = temp; 
22.    } 
23.printf("它們的最大公約數爲:%d\n", x);  24.    printf("它們的最小公倍數爲:%d\n", num1*num2/x);  25.     
26.    return 0;  27.} 


本篇文章來源於 Linux公社網站(www.linuxidc.com)  原文鏈接:http://www.linuxidc.com/Linux/2012-04/58096.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章