View Full Version : بدست آوردن جواب یک عبارت محاسباتی با استفاده از تابع بازگشتی
hamid1
پنج شنبه 19 فروردین 1389, 02:00 صبح
با سلام
من می خواهم یک تابع بازگشتی بنویسم که یک عبارت محاسباتی که می تواند شامل ) ( + - * / و عدد ( یک یا دو رقمی ) باشد را دریافت کند پس از الویت بندی عملگرها ، نتیجه را بدهد خواهش می کنم که من را راهنمایی کنید .
moh_mov
پنج شنبه 19 فروردین 1389, 06:19 صبح
به نظر من راه اینهکه(نه بهترین راه!)کاراکتر ها رو بخونی و با IF اولویت بدی بین عملگر ها...با ASCI کد هم کار کنی..یعنی با کد های اسکی که اگر مثلا کداسکی + و کد اسکی * رو داشتی ...اولویت به ضرب داده شه...
Salar Ashgi
یک شنبه 22 فروردین 1389, 16:57 عصر
بهترین روش بنظر من ، گرفتن عبارت محاسباتی بصورت رشته و بعد با استفاده از ارزیابی
عبارات ، عبارت infix مربوطه رو به postfix تبدیل کنیم و تو حالت postfix بعد از پردازش
عبارت ، به ازای هر عملگر دو عملوند از پشته pop میشوند و مقدارشان محاسبه میشود .
zmmehrdad
چهارشنبه 25 فروردین 1389, 01:08 صبح
تو کتاب ساختمان داده های Horwitz یه نگاه بنداز
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.