c++输入两个正整数求它们的最大公约数和最小公倍数。
2个回答
展开全部
#include "iostream"
using namespace std;
int getMin(int m,int n)//最小公倍数
{
int i,j;
i=m;
if(n>i)
i=n;
for(j=i;;j++)
{
if(j%m==0 && j%n==0)
break;
}
return j;
}
int getMax(int m,int n)//最大公约数
{
int i,j;
i=m;
if(n<i)
i=n;
for(j=i;;j--)
{
if(m%j==0 && n%j==0)
break;
}
return j;
}
int main()
{
int m,n;
cin>>m>>n;
cout<<m<<"和"<<n<<"的最大公约数为:"<<getMax(m,n)<<endl;
cout<<m<<"和"<<n<<"的最小公倍数为:"<<getMin(m,n)<<endl;
}
展开全部
#include<iostream>
using namespace std;
int main()
{
int n,m,i,j,x,t;
cout<<"请输入n和m:";
cin>>m>>n;
x=m*n;
if(m>n)
{t=m;m=n;n=t;}
while(i)
{i=n%m;
n=m;
m=i;
}
j=x/n;
cout<<"m和n的最大公约数:"<<n<<endl;
cout<<"m和n的最小公倍数:"<<j<<endl;
return 0;
}
using namespace std;
int main()
{
int n,m,i,j,x,t;
cout<<"请输入n和m:";
cin>>m>>n;
x=m*n;
if(m>n)
{t=m;m=n;n=t;}
while(i)
{i=n%m;
n=m;
m=i;
}
j=x/n;
cout<<"m和n的最大公约数:"<<n<<endl;
cout<<"m和n的最小公倍数:"<<j<<endl;
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询