编程输入两个整数数,求出它们的最小公倍数和最大公约数。
时间: 2023-06-07 19:09:32 浏览: 94
最小公倍数可以通过两个数的乘积除以它们的最大公约数得到,最大公约数可以通过辗转相除法得到。具体实现可以参考以下代码:
```
#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 a, b;
cout << "请输入两个整数:";
cin >> a >> b;
cout << "它们的最大公约数是:" << gcd(a, b) << endl;
cout << "它们的最小公倍数是:" << lcm(a, b) << endl;
return 0;
}
```
相关问题
python编程:输入两个正整数,求它们的最小公倍数
可以使用以下代码来求两个正整数的最小公倍数:
```python
# 定义函数来求最大公约数
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
# 输入两个正整数
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 求最小公倍数
lcm = a * b // gcd(a, b)
# 输出结果
print("最小公倍数为:", lcm)
```
解释:
1. 首先定义了一个求最大公约数的函数 `gcd`,使用递归算法实现。
2. 接着输入两个正整数 `a` 和 `b`。
3. 根据最小公倍数的定义,可以用两个数的乘积除以它们的最大公约数来求得最小公倍数。
4. 最后输出结果。
注意:在 Python 3 中,整数除法 `//` 可以得到整除的结果。
输入两个正整数求最大公约数和最小公倍数,编程程序,实现学生从键盘输入两个数,得出这两个数的最大公约数和最小公倍数的功能
要编写一个简单的程序来计算两个正整数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM),你可以使用欧几里得算法(辗转相除法)来求解GCD,然后根据公式 `LCM(a, b) = |a * b| / GCD(a, b)` 来计算LCM。以下是使用Python实现的一个例子:
```python
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
def lcm(a, b):
return abs(a * b) // gcd(a, b)
# 主函数
def get_gcd_lcm():
try:
num1 = int(input("请输入第一个正整数: "))
num2 = int(input("请输入第二个正整数: "))
if num1 <= 0 or num2 <= 0:
raise ValueError("输入的数值必须是正整数.")
gcd_result = gcd(num1, num2)
lcm_result = lcm(num1, num2)
print(f"这两个数的最大公约数是: {gcd_result}")
print(f"这两个数的最小公倍数是: {lcm_result}")
except ValueError as e:
print(e)
get_gcd_lcm()
阅读全文