编写程序,提示用户从键盘上输入2个正整数,计算并输出这两个数的最大公约数和最小公倍数
时间: 2023-04-10 14:03:42 浏览: 110
非常好的问题!以下是计算最大公约数和最小公倍数的代码:
```lua
-- 从键盘上输入2个正整数
print("请输入两个正整数:")
local num1 = io.read("*n")
local num2 = io.read("*n")
-- 计算最大公约数
local function gcd(a, b)
if b == 0 then
return a
else
return gcd(b, a % b)
end
end
local max_divisor = gcd(num1, num2)
print("最大公约数为:" .. max_divisor)
-- 计算最小公倍数
local function lcm(a, b)
return a * b / gcd(a, b)
end
local min_multiple = lcm(num1, num2)
print("最小公倍数为:" .. min_multiple)
```
希望这个代码能够帮助你!
相关问题
编写程序,提示用户从键盘上输入2个正整数,计算并输出这两个数的最大公约数和最小公倍数。
好的,这是一个编程类的问题,我可以回答。以下是一个示例代码:
```lua
-- 从键盘上读取两个正整数
print("请输入两个正整数:")
local num1 = io.read("*n")
local num2 = io.read("*n")
-- 计算最大公约数
local function gcd(a, b)
if b == 0 then
return a
else
return gcd(b, a % b)
end
end
local max_divisor = gcd(num1, num2)
-- 计算最小公倍数
local min_multiple = num1 * num2 / max_divisor
-- 输出结果
print(string.format("最大公约数:%d", max_divisor))
print(string.format("最小公倍数:%d", min_multiple))
```
希望这个代码能够帮到你!
编写python程序,从键盘输入两个正整数,计算两个数的最大公约数和最小公倍数。
为了计算两个正整数的最大公约数和最小公倍数,可以编写如下Python程序:
```python
# 从键盘输入两个正整数
num1 = int(input('请输入第一个正整数:'))
num2 = int(input('请输入第二个正整数:'))
# 计算最大公约数和最小公倍数
temp1 = num1
temp2 = num2
while temp2 != 0:
temp = temp1 % temp2
temp1 = temp2
temp2 = temp
gcd = temp1
lcm = num1 * num2 // gcd
# 输出结果
print('最大公约数是:', gcd)
print('最小公倍数是:', lcm)
```
程序首先通过`input()`函数从键盘输入两个正整数。然后使用`while`循环和辗转相除法计算最大公约数,最终得到两个数的最大公约数。最小公倍数可以通过两个数的乘积除以最大公约数得到。最后使用`print()`函数输出结果。
例如,如果输入的两个数分别为15和20,则程序运行结果如下:
```
请输入第一个正整数:15
请输入第二个正整数:20
最大公约数是: 5
最小公倍数是: 60
```
这就表示15和20的最大公约数是5,最小公倍数是60。