问题标题: 酷町堂:1238   最大公约数

0
0
已解决
邵逸儒
邵逸儒
中级天翼
中级天翼

1238   最大公约数

题目描述 Description

给定两个正整数,求它们的最大公约数。

输入描述 Input Description

输入一行,包含两个正整数(<1,000,000,000)。

输出描述 Output Description

输出一个正整数,即这两个正整数的最大公约数。

样例输入 Sample Input


 

6 9

样例输出 Sample Output


 

3

邵逸儒在2018-02-28 21:12:49追加了内容

http://wenda.codingtang.com/questions/904/

邵逸儒在2018-02-28 21:13:43追加了内容

http://wenda.codingtang.com/questions/1608/

邵逸儒在2018-03-01 19:52:36追加了内容

 


0
已采纳
王梓澳
王梓澳
中级光能
中级光能

核心代码:

    r=a%b;
    while (r!=0)
    {
        a=b;
        b=r;
        r=a%b;
    }

 

0
0
程之行
程之行
高级守护
高级守护
function czx(m,n:longint):longint;
var
    r:longint;
begin
    r:=m mod n;
    if r=0 then exit(n);
    czx:=czx(n,r);
end;

函数部分

如果是(c++)看:function 就是函数m,n是形参

0
0
张舒斌
张舒斌
中级光能
中级光能
a1=m;a2=n;
while(m%n)
{
     temp=m%n;
     m=n;n=temp;
}
    主要部分,求采纳
0
马佳滢
马佳滢
新手天翼
新手天翼

 hihihihihi!

  长整型 i赋初始值1,m,n,s,x;
    输入m和n;

 do
 {
    s赋值m×i;
    i++;
 } 
 while(s÷n!=0);

     x赋值m×n÷s;
     输出x换行;
 

0
栾峻岩
栾峻岩
初级天翼
初级天翼

辗转相除法搞定:

while (num!=0)
    {
        x=y;
        y=num;
        num=x%y;
    }

一开始,num是x%y的。

输出x(呸,是y)

0
储金洋
储金洋
新手光能
新手光能

函数部分:

函数maxv定义n,m;
if(n等于0)
        return m;
    else
    {
        return 函数maxv(n,m%n);
    }

你再补充下主程序就行了

 

求采纳

0
阮俊雄
阮俊雄
新手光能
新手光能

用辗转相除法:

while (n!=0){

    x=y;

    y=num;

    num=x%y;

}

我要回答