3337 - 习题5-3-2 求最大公约数
时间限制 : 1 秒
内存限制 : 12 MB
输入两个正整数,求其最大公约数。
题目输入
测试数据有多组,每组输入两个正整数,两个正整数之间以空格分隔。
题目输出
对于每组输入,输出其最大公约数。
每组对应一个输出,单独占一行。
输入/输出样例
输入格式
14 49 21 66
输出格式
7 3
C语言解答
#include<stdio.h> int main() { int a,b,c,d; int yue(int x,int y); scanf("%d%d%d%d",&a,&b,&c,&d); printf("%d\n",yue(a,b)); printf("%d\n",yue(c,d)); return 0; } int yue(int x,int y) { int i,min,max; min=(x>y)?y:x; for (i=1;i<min;i++) { if(x%i==0&&y%i==0) max=i; } return max; }
C++解答
#include<iostream> using namespace std; int main() { int m,n; while (cin>>m>>n) { int r=m%n; while (r) { m=n; n=r; r=m%n; } cout<<n<<endl; } return 0; }