关于利用C++简单语言求最小公倍数的问题~

利用两个数相乘除以最大公约数来求最小公倍数!
能不能改改下面的程序,就是最后cout输出最小公倍数时怎么样引用刚输入时的两个数?
#include"iostream.h"
void main()
{int m,n,r,t;
cout<<"请输入两个值,求最小公倍数"<<endl;
cin>>m>>n;
if(m<n){t=m,m=n,n=t;}
while((r=m%n)!=0)
{m=n;
n=r;}
cout<<"最大公约数="<<n<<endl;
cout<<"最小公倍数="<<endl;
}

1、首先在电脑中,打开visual C++ 6.0-文件-新建-文件-C++ Source File。

2、输入预处理命令和主函数,如下图所示。

3、然后定义变量、输入数值,如下图所示。

4、接着计算最大公因数和最小公倍数,如下图所示。

5、输出最大公因数和最小公倍数,如下图所示。

6、最后点击运行,如下图所示,就完成了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
已改,看注释
#include <iostream>
using namespace std;
void main()
{
int m,n,r,t;
cout<<"请输入两个值,求最小公倍数"<<endl;
cin>>m>>n;
int a = m; //先把m、n保存一份
int b = n;
if(m<n)
{
t=m; //用分号
m=n; //用分号
n=t;
}
while((r=m%n)!=0)
{
m=n;
n=r;
}
cout<<"最大公约数="<< n << endl;
cout<<"最小公倍数="<< a * b / n << endl; //最后这样打印
}追问

请问这道题跟指针有关系吗?可以用指针指向最初输入m,n的位置吗?

追答

跟指针完全没关系,你看到有 * 这个符号么?
如果用指针指向m,n,但是你改变了m,n的值,指针指向的值也会改变的,所以不可以那样实现

本回答被提问者采纳
第2个回答  2011-12-23
#include"iostream.h"
void main()
{int m,n,r,t;
cout<<"请输入两个值,求最小公倍数"<<endl;
cin>>m>>n;
temp=m*n;
if(m<n){t=m,m=n,n=t;}
while((r=m%n)!=0)
{m=n;
n=r;}
cout<<"最大公约数="<<n<<endl;
cout<<"最小公倍数="<<temp/n<<endl;
}
第3个回答  2011-12-23
#include<iostream>
void main()
{
int m,n,r,t;
cout<<"请输入两个值,求最小公倍数"<<endl;
cin>>m>>n;
if(m<n)
{
t=m;m=n;n=t;
}
while((r=m%n)!=0)
{
m=n;
n=r;

cout<<"最大公约数="<<n<<endl;
cout<<"最小公倍数="<<m<<endl;
}

我不知道你是什么意思,你是想输出你一开始输入的两个数吗?如果是的话,你可以再定义两个变量,把m、n赋给新的变量。然后再对m、n操作!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网