永发信息网

C++利用辗转相除法求2数最大公约数

答案:1  悬赏:50  手机版
解决时间 2021-04-05 07:56
  • 提问者网友:棒棒糖
  • 2021-04-04 23:34
#include <iostream.h>
void main()
{
int x,y,c;
cout<<"please input 2 numbers: "<<endl;
cin>>x>>y;
if(x>y)
{
while(y!=0)
{
c=x%y;
x=y;
y=c;
}
cout<<"最大公约数为:"<<y<<endl;
}
else
{
while(x!=0)
{
c=y%x;
y=x;
x=c;
}
cout<<"最大公约数为:"<<x<<endl;
}
}
这个错在哪里了?应该改成什么样?
最佳答案
  • 五星知识达人网友:举杯邀酒敬孤独
  • 2021-04-05 00:32
#include <iostream.h>
void main()
{
int x,y,c;
cout<<"please input 2 numbers: "<<endl;
cin>>x>>y;
if(x>y)
{
while(y!=0)
{
c=x%y;
x=y;
y=c;
}
cout<<"最大公约数为:"<<x<<endl; //这里输出x, y恒=0
}
else
{
while(x!=0)
{
c=y%x;
y=x;
x=c;
}
cout<<"最大公约数为:"<<y<<endl; //这里输出y, x恒=0
}
}

x, y 反了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯