3152 - 习题2-4-7 求最大公约数

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 12 MB

读入两个正整数m和n,计算m和n的最大公约数。

题目输入

两个空格隔开的正整数m和n。

题目输出

m和n的最大公约数。注意行尾输出换行。

输入/输出样例

输入格式

35 14

输出格式

7

C语言解答

#include <stdio.h>
int main()
{
  int m, n, i;
  scanf("%d %d", &m, &n);
  if(m > n)
  {
    for(i = n; i > 1; i --)
    {
      if(m % i == 0 && n % i == 0)
      {
        printf("%d", i);
        break;
      }
    }
  }
  if(n > m)
    {
    for(i = m; i > 1; i --)
    {
      if(m % i == 0 && n % i == 0)
      {
        printf("%d", i);
        break;
      }
    }
  }
  return 0;
}

C++解答

#include<stdio.h>
int main()
{
	int m,n,a,b,i;
	scanf("%d %d",&m,&n);
	if(m>n)
	{
		a=m;
		b=n;
	}
	else
	{
	    a=n;
	    b=m;
	}
    i=b;
    while(i>=1)
    {
    	if(a%i==0&&b%i==0)
    	{
    		printf("%d\n",i);
    		break;
    	}
    i--;
    }
    return 0;
}