0
已采纳
施巧稚
初级守护
初级守护
r=a%b; while(r!=0) { a=b; b=r; r=a%b; } 这是求最大公约数的代码
再套上题目要求,就可以了。
其实不需要楼上各位大佬那么长
施巧稚在2018-12-24 21:40:52追加了内容
施巧稚在2019-01-30 10:09:09追加了内容
输出分母于分子,就是求出的最大公约数
0
0
时梓繁
修练者
修练者
int main()
{
int n,m;
cin>>n>>m;
cout<<n/gcd(n,m)<<" "<<m/gcd(n,m);部分代码!!
return 0;
}
部分代码!!
0
0
贾志铭
中级守护
中级守护
先定义两个数(我用的是m和n)
在输入这两个数
然后再定义两个数(我用的是a和b)
再将m,n赋值给a,b:a=m;b=n;
来个while循环,条件是m%n!=0
定义一个数(我用的是temp)
里面用辗转相除法求最大公因数:
用较大数m除较小数n
得到的余数temp作为下一次运算的较小数n
原来的n作为较大数
献上代码:
temp=n;
n=m%n;
m=temp;
在定义个数(我用的是s)
把n赋值给s:s=n;
最后输出a/s和b/s:
cout<<a/s<<" "<<b/s;
贾志铭在2018-12-23 20:26:58追加了内容
怕你看不懂
献上while循环代码:
while(m%n!=0)
{
temp=n;
n=m%n;
m=temp;
s=n;
}
求采纳