یک ماشین حساب ساده

  • مدرس: علی بیگدلی
  • تاریخ انتشار: Aug 24, 2020

ماشین حساب ساده

این درس در مورد پروژه ای ساده در پایتون است: یک ماشین حساب ساده. هر بخش متفاوتی از برنامه را توضیح می دهد. که به صورت یک دسته از کد به هم مرتبط در آمده و بینشی از نحوه ساخت یک برنامه ساده را نشان خواهد داد. بخش اول منوی کلی است. در این حالت تا زمانی که از کاربر ورودی quit را نگیرد از کاربر ورودی برای عملکرد های متفاوت را دریافت خواهد کرد.

while True:
   print("Options:")
   print("Enter 'add' to add two numbers")
   print("Enter 'subtract' to subtract two numbers")
   print("Enter 'multiply' to multiply two numbers")
   print("Enter 'divide' to divide two numbers")
   print("Enter 'quit' to end the program")
   user_input = input(": ")

   if user_input == "quit":
      break
   elif user_input == "add":
      ...
   elif user_input == "subtract":
      ...
   elif user_input == "multiply":
      ...
   elif user_input == "divide":
      ...
   else:
      print("Unknown input")

نکته:کد بالا، نقطه شروع برای برنامه ما است. در ابتدای کار از کاربر ورودی را خواهد گرفت. بخش بعدی برنامه گرفتن شماره هایی است که کاربر میخواهد کاری را انجام دهد. کد زیر نشان می دهد که برای بخش جمع ماشین حساب چه عملکردی خواهد داشت. کد مشابه برای بخش های دیگر باید نوشته شود.

elif user_input == "add":
  num1 = float(input("Enter a number: "))
  num2 = float(input("Enter another number: "))

در حال حاضر، هنگامی که کاربر ورودی "add" می دهد، برنامه درخواست وارد کردن دو عدد و ذخیره آنها را در متغیرهای متناظر را خواهد داشت. بخش نهایی برنامه ورودی کاربر را پردازش می کند و آن را نمایش می دهد. کد قسمت اضافه شده در اینجا نشان داده شده است.

elif user_input == "add":
  num1 = float(input("Enter a number: "))
  num2 = float(input("Enter another number: "))
  result = str(num1 + num2)
  print("The answer is " + result)

ما اکنون یک برنامه کاری داریم که از کاربر ورودی میگیرد و سپس مقدار خروجی را محاسبه و چاپ می کند. کد مشابهی باید برای شاخه های دیگر (برای تفریق، ضرب و تقسیم) نوشته شود.

ثبت دیدگاه
نام *
ایمیل*
دیدگاه *
captcha
6دیدگاه
  • محمدرضا
    1 week, 4 days ago

    با عرض سلام‌و خسته نباشید خدپت شما و دوره ی عالیتون چجوری میتونم فیلمارو دانلود کنم؟؟
    چون بخاطره سرعت نت کلن صفحه کدر و ماته و اصلا دیده نمیشه اگه لطف کنین لینک تلگرامی چیزی بذارین ک بشه فیلمارو دانلود کرد بازم تشکر بابت کلیپ های اموزشیتون خیلی عالین

    • علی بیگدلی
      1 week, 4 days ago

      متشکرم، می تونید ویدیو ها رو با ورود به کانال اپارات ما و تنظیم کیفیت های مشخص دانلود کنین ولی به زودی آپشن دانلود ویدیو به کنار ویدیو ها در ماه آینده اضافه خواهد شد

  • danial nazazri
    1 month, 1 week ago

    من یک راه حل قشنگ تر درست کردم
    print("wellcome to calculator")
    print("for plus +")
    print("for mines -")
    print("for multiplication*")
    print("for divide/")
    print("for exit")

    while True:

    alm=["+","-","*","/","exit"]
    print(alm[0])
    print(alm[1])
    print(alm[2])
    print(alm[3])
    print(alm[4])
    z=input("number one: ")
    if z=="exit":
    print("bay bay")
    break
    w=input("number two: ")
    if w=="exit":
    print("bay bay")
    break
    x=input("typ what to do: ")
    if x=="+":
    y=str(z+w)
    print(y)
    elif x=="-":
    y=str(z-w)
    print(y)
    elif x=="*":
    y=str(z*w)
    print(y)
    elif x=="/":
    y=str(z/w)
    print(y)
    elif x=="exit":
    print("bay bay")
    break

    • علی بیگدلی
      1 month, 1 week ago

      خیلی خوبه روش شما هم زیبا هستش اما در نظر داشته باشید که ممکنه به چندین روش مختلف بشه تنها یک کار رو انجام داد اما با رویکرد ها و استفاده از ابزار متفاوت ولی در کل این خوبه که وابسته به فقط چیزی که میبینید نباشید و خلاقیت به خرج بدید

  • shahram
    2 months, 1 week ago

    سلام وعرض احترام خدمت استاد گرامی
    من در درس ماشین حساب به مشکلی برخوردم لطفا راهنمایی فرمایید
    while True:
    print("welcome to my calculator")
    print("option:")
    print("enter'add'to add two numbers")
    print("enter 'subtract'to subtract two numbers")
    print("enter 'multiply'to multiply two numbers")
    print("enter 'divide'to divide two numbers")
    print("enter 'quit'to the program")
    user_input:input(": ")
    if user_input == "quit":
    print("exit")
    break
    elif user_input == "add":
    num1=float(input("enter first number :"))
    num2=float(input("enter second number :"))
    result=str(num1+num2)
    print("the answer:" + result)
    elif user_input == "subtract":
    num1=float(input("enter first number :"))
    num2=float(input("enter second number :"))
    result=str(num1-num2)
    print("the answer:" + result)
    elif user_input == "multiply":
    num1=float(input("enter first number:"))
    num2=float(input("enter second number: "))
    result=str(num1*num2)
    print("the answer:" + result)
    elif user_input == "divide":
    num1=float(input("enter first number:"))
    num2=float(input("enter second number:"))
    result=str(num1/num2)
    print("the answer:" + result)
    else:
    print("unknown input")
    همه اطلا عات وارد کردم ولی در اجرا وقتی میخوام مثلا : addرابزنم به این پیغام برام میاد
    Traceback (most recent call last):
    File "C:/Users/Shahram/Desktop/12.py", line 10, in <module>
    if user_input == "quit":
    NameError: name 'user_input' is not defined

    • علی بیگدلی
      2 months, 1 week ago

      مشکلتون توی خطی هستش که می خواید از کاربر ورودی بگیرید که به جای علامت تخصیص از : استفاده کردید.
      user_input=input(": ")