编制求两个正整形数最小公倍数程序。要求:两个输入框txt、txt2, 用来输入整形数据;一个按钮;一个不可编辑的输入组件txt3。当单击按 钮时,在txt3中显示两个整形数的最小公倍数的值。
时间: 2023-12-03 11:42:31 浏览: 57
以下是使用 Python 语言编写的最小公倍数程序:
```python
import tkinter as tk
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
def lcm(a, b):
return a * b // gcd(a, b)
def calculate_lcm():
num1 = int(txt.get())
num2 = int(txt2.get())
result = lcm(num1, num2)
txt3.config(state=tk.NORMAL)
txt3.delete(0, tk.END)
txt3.insert(tk.END, str(result))
txt3.config(state=tk.DISABLED)
root = tk.Tk()
root.title("最小公倍数计算器")
frame1 = tk.Frame(root)
frame1.pack(fill=tk.X)
label1 = tk.Label(frame1, text="请输入第一个整数:")
label1.pack(side=tk.LEFT, padx=5, pady=5)
txt = tk.Entry(frame1)
txt.pack(fill=tk.X, padx=5, expand=True)
frame2 = tk.Frame(root)
frame2.pack(fill=tk.X)
label2 = tk.Label(frame2, text="请输入第二个整数:")
label2.pack(side=tk.LEFT, padx=5, pady=5)
txt2 = tk.Entry(frame2)
txt2.pack(fill=tk.X, padx=5, expand=True)
frame3 = tk.Frame(root)
frame3.pack(fill=tk.X)
btn = tk.Button(frame3, text="计算最小公倍数", command=calculate_lcm)
btn.pack(side=tk.LEFT, padx=5, pady=5)
txt3 = tk.Entry(frame3, state=tk.DISABLED)
txt3.pack(fill=tk.X, padx=5, expand=True)
root.mainloop()
```
这个程序使用了 Python 的 tkinter 模块创建了一个简单的 GUI 界面,包括两个输入框和一个按钮用于输入和计算最小公倍数,以及一个不可编辑的输出框用于显示结果。程序中的 `gcd()` 函数用于计算两个数的最大公约数,`lcm()` 函数用于计算两个数的最小公倍数。当用户点击计算按钮时,程序会调用 `calculate_lcm()` 函数进行计算并将结果显示在输出框中。