首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++程序求赐教

2012-09-27 
c++程序求指教#include iostreamusing namespace stdvoid main(){int a,b,i,mincout输入两个正数:

c++程序求指教
#include <iostream>
using namespace std;

void main()
{
int a,b,i,min;
cout<<"输入两个正数:"<<endl;
cin>>a>>b;
min=(a<b?a:b);
for(i=1;i<=min;i++)
if (a%i==0&&b%i==0)
cout<<"i="<<i<<endl;

}



上面这段程序能求出2个正整数的所有公约数,但是怎么样改能从得到的这些公约数中只输出那个最大的???

[解决办法]
楼主,你好,根据你的问题,修改了你的代码

 #include <iostream>
using namespace std;

void main()
{
int a,b,i,min;
int max;
cout<<"输入两个正数:"<<endl;
cin>>a>>b;
min=(a<b?a:b);
for(i=1;i<=min;i++)
{
if (a%i==0 && b%i==0)
{
max=i;
if(max<=i)
{max=i;}

}
}
cout<<"最大公约数是:"<<max<<endl;
}


[解决办法]
int temp;
for (i=1;i<=min;i++)
{
if (a%i==0 && b%i==0)
{
temp = i;
}
}
cout << temp << endl;
[解决办法]
#include <iostream>
using namespace std;

void main()
{
int a,b,i,min,big;
cout<<"输入两个正数:"<<endl;
cin>>a>>b;
min=(a<b?a:b);
for(i=1;i<=min;i++)
{if (a%i==0&&b%i==0)
 big=i;}
cout<<"i="<<big<<endl;

}
[解决办法]
#include <iostream>
using namespace std;

void main()
{
int a,b,i,min,k;
cout<<"输入两个正数:"<<endl;
cin>>a>>b;
min=(a<b?a:b);
for(i=1;i<=min;i++)
if (a%i==0&&b%i==0)
k=i;
}

cout<<"i="<<k<<endl;

热点排行