OJ_1056 最大公约数

来源:互联网 发布:软件测试招聘网 编辑:程序博客网 时间:2024/06/05 01:05
#include <iostream>#include <stdlib.h>using namespace std;void swap(int &a,int &b){     int t=a;     a=b;     b=t; }int getnum(int a,int b){    if(a<b)swap(a,b);    int t;    while(a-b!=0)    {           t=a-b;            if(t<b){                   a=b;b=t;                   }else                   {a=t;                    }    }    return b;}void func(){     int m,n;     while(cin>>m>>n)     {                   cout<<getnum(m,n)<<endl;       }         }int main(int argc, char *argv[]){    //printf("Hello, world\n");func();return 0;}

辗转相除或辗转相减(都是相除的思路),相减的过程可以通过判断奇偶来减少计算的数量(这里未写,待补上)

题目描述:

输入两个正整数,求其最大公约数。

输入:

测试数据有多组,每组输入两个正整数。

输出:

对于每组输入,请输出其最大公约数。

样例输入:
49 14
样例输出:
7


0 0
原创粉丝点击