您的位置:首页 > 编程语言 > C语言/C++

5.C++ 辗转相处法求最大公约数和最小公倍数

2013-11-17 20:20 411 查看
以下参考辗转相处法百度百科:

#include <iostream>

//辗转相除法求最大公约数
int MaxNumber(int a, int b)
{
int temp;
if (a<b) {
temp=a;
a=b;
b=temp;
}
if (a%b==0) {
return b;
}
else
{
return MaxNumber(b,a%b);
}
}
//最小公倍数
int minCD(int a, int b)
{
return a*b/MaxNumber(a, b);
}

int main(int argc, const char * argv[])
{
/*
表达式的副作用
——赋值类
——自增、自减
*/
int i,j,k;
i=5;
j=9;
k=i+++j;
std::cout<<"i="<<i<<std::endl;//6
std::cout<<"j="<<j<<std::endl;//9
std::cout<<"k="<<k<<std::endl;//14
k=i+(++j);
std::cout<<"k="<<k<<std::endl;//16

/*
逗号表达式
表达式1,表达式2
*/
int a,b,c,d;
(a=1,b=56,c=10,d)=5;
std::cout<<"d="<<d<<std::endl;//5

//调用函数
std::cout<<"请输入两个数:"<<std::endl;
std::cin>>a>>b;
std::cout<<"最大公约数:"<<MaxNumber(a, b)<<std::endl;
std::cout<<"最小公倍数:"<<minCD(a, b)<<std::endl;

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: