ارزیابی روش Postfix چیست ؟

0

رزیابی روش Postfix چیست ؟

بهمنظور ارزیابی یک عبارت postfix ما از تجزیه کنندة بخش قبـل و الگـوریتم مربـوط بـه بخش قبل از آن (دو بخش پیش) استفاده میکنیم. براي حفظ سادگی، کار را با یـک ارزیـاب کـه تنهـا عملگرهاي + و * را اجرا میکند، آغاز مینماییم:

def evalPostfix(expr):
import re
tokenList = re.split(“([^0-9])”, expr)
stack = Stack()
for token in tokenList:
if token == ” or token == ‘ ‘:
continue
if token == ‘+’:
sum = stack.pop() + stack.pop()
stack.push(sum)
elif token == ‘*’:
product = stack.pop() * stack.pop()
stack.push(product)
else:
stack.push(int(token))
return stack.pop()

شرط اول فواصل خالی و رشتههاي تهی را بررسی میکند و دو شرط بعدي عملگرها را کنتـرل میکنند. در حال حاضر فرض میکنیم هر کـاراکتر دیگـر بایـد یـک عملونـد باشـد. البتـه بهتـر اسـت وروديهاي نادرست را بررسی نماییم و پیغـام خطـایی گـزارش دهـیم. امـا در آینـده بـه ایـن موضـوع میپردازیم. بیایید این کد را با ارزیابی فرم postfix عبارت 2)*47+56 (آزمایش نماییم:

>>> print evalPostfix “56 47 + 2
206

به اندازة کافی دقیق است.

برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید

بستر اموزش های ویدویی 

کیانا ابراهیمی سوال پاسخ داده شده اکتبر 15, 2020
گذاشتن نظر
پاسخ خود را بنویسید .
  • فعال
  • بازدیدها1830 times
  • پاسخ ها1 پاسخ
ورود به متاورس | متاورس ایرانی
ورود به متاورس ایران یا همان متاورس ملی

علامت ذره بین Tutorials سمت راست به رنگ قرمز به شما کمک خواهد کرد .

جدید ترین سوالات پرسیده شده

منقضی شدن سم بتانال 1 پاسخ | 0 آرا
ایا ایدز گزفتم؟ 0 پاسخ ها | 0 آرا
انتخاب ورزش رزمی 0 پاسخ ها | 1 رای
وزارت تعاون کار و رفاه اجتماعی نماد اعتماد الکترونیک اسناد و املاک کشور مرکز آموزش ویدیویی انجمن حم فروشگاه ملی تولید کنندگان مدیریت بر مدیران حم سامانه حیوانات رسانه ملی اخبار متا دانشگاه متاورس استخدام | دانش فروشگاه حم تبلیغات ملی بازار NFT متاورس رنگ نقشه ملی سه بعدی متا املاک و مستغلات