编写一段vc++的代码,求两个数的最大公约数和最小公倍数
时间: 2023-11-17 10:09:31 浏览: 80
以下是求两个数的最大公约数和最小公倍数的VC++代码:
```c++
#include <iostream>
using namespace std;
int gcd(int a, int b) { // 求最大公约数
if(b == 0) {
return a;
}
return gcd(b, a % b);
}
int lcm(int a, int b) { // 求最小公倍数
return a * b / gcd(a, b);
}
int main() {
int a, b;
cout << "请输入两个整数: ";
cin >> a >> b;
cout << "它们的最大公约数是: " << gcd(a, b) << endl;
cout << "它们的最小公倍数是: " << lcm(a, b) << endl;
return 0;
}
```
该程序先定义了两个函数`gcd`和`lcm`,分别用来求最大公约数和最小公倍数。在`main`函数中,用户输入两个整数,然后调用`gcd`和`lcm`函数分别求出它们的最大公约数和最小公倍数并输出。
相关问题
编写一段vc6.0的代码,求两个数的最大公约数和最小公倍数
以下是求两个数的最大公约数和最小公倍数的VC6.0代码:
```c++
#include <iostream>
using namespace std;
// 求两个数的最大公约数
int gcd(int a, int b)
{
if(b == 0)
return a;
else
return gcd(b, a % b);
}
// 求两个数的最小公倍数
int lcm(int a, int b)
{
return a * b / gcd(a, b);
}
int main()
{
int num1, num2;
cout << "请输入两个整数:" << endl;
cin >> num1 >> num2;
cout << "最大公约数为:" << gcd(num1, num2) << endl;
cout << "最小公倍数为:" << lcm(num1, num2) << endl;
return 0;
}
```
注意:VC6.0不支持 `using namespace std`,需要将命名空间 std:: 显式写出。
编写一个程序,求两个数的最大公约数和最小公倍数
最大公约数可以用辗转相除法求解,最小公倍数可以用两数之积除以它们的最大公约数求解。以下是求解最大公约数和最小公倍数的 Python 代码:
``` python
def gcd(a, b):
while b:
a, b = b, a % b
return a
def lcm(a, b):
return a * b // gcd(a, b)
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
print("最大公约数为:", gcd(a, b))
print("最小公倍数为:", lcm(a, b))
```
阅读全文