求最大公约数

求最大公约数

时间: 1ms        内存:128M

描述:

输入两个正整数,求出它们的最大公约数并输出

输入:

两个正整数

输出:

这两个正整数的最大公约数

示例输入:

80 36

示例输出:

4

提示:

参考答案(内存最优[748]):

#include<stdio.h>
int main()
{
int num1,num2;
scanf("%d%d",&num1,&num2); 
while(num1 != num2)//当两数不等时,不停的用大数减小数,并把结果赋值给大数,相当于求余数
if(num1>num2) 
num1 = num1-num2; 
else 
num2=num2-num1; 
printf("%d",num1); 
return 0;
}

参考答案(时间最优[0]):

#include <iostream>
using namespace std;
int main()
{
    int a,b,r;
    cin>>a>>b;
    while (b!= 0)
    {
        r=a%b;
        a=b;
        b=r;
    }
    cout<<a<<endl;
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注