编写程序计算整数a,b的最大公因数(a,b)
#include <iostream>
using namespace std;
int main()
{
int a,b ;
while(cin>>a>>b)
{
if(a<b)
{
int tmp = a;
a = b;
b = tmp;
}
int mode = a%b,r;
while(mode)
{
a = b;
b = mode;
r = a/b;
mode = a%b ;
}
cout<<b<<endl;
}
return 0;
}
编写程序计算整数a,b的最大公因数(a,b),并求出整数s,t,使得sa+tb = (a,b).
#include <iostream>
using namespace std;
void func(int a,int b,int &s,int &t)
{
if(b)
func(b,a%b,s,t);
else{
s = 1,t = 0;
return;
}
int tmp = s;
s = t;
t = tmp-a/b*t;
}
int main()
{
int a,b ;
while(cin>>a>>b)
{
int s,t;
func(a,b,s,t);
cout<<"s="<<s<<" t="<<t<<endl;
}
return 0;
}