#include<stdio.h>
#include<string.h>
#include<math.h>
// 输入两个不大于10的9次方的正整数,输出其最大公约数。
//输入两个正整数m和n,数据之间用空格隔开。
//输出一个整数,表示m和n的最大公约数。
int main()
{
//思路:如果大数除于小数能除尽,最大公约就是小数
//如果除不尽就用余数去除以除数
int gcd=0,m,n,t=1;
scanf("%d%d",&m,&n);
if(m<n)
{
int temp;
temp=n;
n=m;
m=temp;
}
t=m%n;//除尽了 余数
if(t==0)
printf("%d",n);
else
{
int divisor=n;
int reminder=t;
do
{
t=divisor%reminder;//把余数赋给t
gcd=reminder;//把除数赋给最大公约数
divisor=reminder;//把上一次的除数赋给被除数
reminder=t;//把上一次的余数赋给除数
}while(t!=0);//直到t!=0变成假退出while循环
//do while 先执行里面的语句,再判断真假,如果t==0就不执行了
printf("%d",gcd);
}
return 0;//今天又是没带return 0的一天
}