ماشین حساب

اصلاح شده

2026-09-03

با استفاده از مطالبی که آموخته‌اید میتوانید کدهای زیر را بخوانید.

مقدار

print(1 + 2)

متغیر

n1 = 1
n2 = 2

print(n1 + n2)

ورودی

n1 = float(input("n1: "))
n2 = float(input("n2: "))

print(n1 + n2)

عملگرهای دیگر

  • عملگرهای توان، مقسوم علیه و باقیمانده را اضافه کنید.
n1 = float(input("n1: "))
n2 = float(input("n2: "))

print(n1 + n2)
print(n1 - n2)
print(n1 * n2)
print(n1 / n2)

دستورات شرطی

  • عملگرهای توان، مقسوم علیه و باقیمانده را اضافه کنید.
n1 = float(input("n1: "))
n2 = float(input("n2: "))
op = input("+,-,*,/: ")

if op == "+":
    print(n1 + n2)
elif op == "-":
    print(n1 - n2)
elif op == "*":
    print(n1 * n2)
elif op == "/":
    print(n1 / n2)
else:
    print("operator is not valid!")

مدیریت خطا

  • عملگرهای توان، مقسوم علیه و باقیمانده را اضافه کنید.
try:
    n1 = float(input("n1: "))
    n2 = float(input("n2: "))
    op = input("+ - * /: ")

    if op == "+":
        print(n1 + n2)
    elif op == "-":
        print(n1 - n2)
    elif op == "*":
        print(n1 * n2)
    elif op == "/":
        print(n1 / n2)
    else:
        print("operator is not valid!")
except Exception as e:
    print("Error:", str(e))

رابط گرافیکی

  • عملگرهای توان، مقسوم علیه و باقیمانده را اضافه کنید.
import tkinter as tk


def calculate():
    try:
        n1 = float(entry1.get())
        n2 = float(entry2.get())
        op = operator.get()

        if op == "+":
            result = n1 + n2
        elif op == "-":
            result = n1 - n2
        elif op == "*":
            result = n1 * n2
        elif op == "/":
            if n2 == 0:
                result_label.config(text="خطا: تقسیم بر صفر!")
                return
            result = n1 / n2
        else:
            result_label.config(text="عملگر نامعتبر است")
            return

        result_label.config(text=f"نتیجه: {result}")

    except ValueError:
        result_label.config(text="لطفاً فقط عدد وارد کنید")


window = tk.Tk()
window.title("ماشین حساب ساده")
window.geometry("300x250")

label1 = tk.Label(window, text="عدد اول:")
entry1 = tk.Entry(window)

label2 = tk.Label(window, text="عدد دوم:")
entry2 = tk.Entry(window)

label_op = tk.Label(window, text="عملگر (+ - * /):")
operator = tk.Entry(window)

calc_button = tk.Button(window, text="محاسبه", command=calculate)
result_label = tk.Label(window, text="نتیجه: ", fg="blue")

label1.pack()
entry1.pack()

label2.pack()
entry2.pack()

label_op.pack()
operator.pack()

calc_button.pack(pady=10)
result_label.pack()

window.mainloop()