PDA

نسخه کامل مشاهده نسخه کامل : تبديا عبارت ميانوندي به پسوندي



shokoufeye anar
07-11-2009, 12:29
سلام
من به یه برنامه احتیاج دارم با c ++
برنامه نویسی خودم افتضاحه ممنون میشم کمکم کنید
الگوریتمشم میگم واسه دوستایی که احتمالا ( یادشون رفته)
1- ایجاد یک پشته خالی
2-عبارت رو از چپ به راست بخونه و تا زمانیکه به انتهای عبارت بعدی نرسیده اعمال زیر رو انجام بده:
الف)نشانه بعدی(ثابت،متغیر،عملگر،پرا تز باز و بسته) را از عبارت میانوندی دریافت کن
ب) اگر نشانه :
* پرانتز باز است آن را در پشته قرار بده
* عملوند است آن را در خروجی بنویسد
*عملگر است. اگر تقدم این عملگر از تقدم بالای پشته بیشتر باشد آن را در پشته قرار بده
وگرنه عضو بالای پشته رو حذف کنه و در هروجی بنویسه
حالا این عملگر ورودی رو با عملگر جدید موجود در بالای پشته مقایسه کنه و عمل را اونقدر ادامه بده تا پشته خالی شه یا تقدم عملگر موجود در پشته کمتر از آن عملگر بشه در این صورت اون رو در پشته قرار بده
* پرانتز بسته است.آنگاه عملگرهای بالای پشته رو pop کرده و در خروجی بنویسه تا وقتی به پرانتز باز برسه اونو pop کنه اما تو خروجی ننویسه
3-وقتی یه انتهای عبارت رسید عناصر موجود در پشته رو حذف کنه و در خروجی بنویسه تا پشته خالی شه
وااااااای چقدر طولانی شد.
من منتظر می مونم
اما زیاد منو منتظر نذارید
ممنون

farshidshd
07-11-2009, 12:50
اگه عجله نداشته باشی تا 2 شنبه یا سه شنبه میزارم واست

shokoufeye anar
07-11-2009, 13:04
اگه عجله نداشته باشی تا 2 شنبه یا سه شنبه میزارم واست

ممنون ميشم واقعا
منتظرم:11:

shokoufeye anar
10-11-2009, 22:05
اگه عجله نداشته باشی تا 2 شنبه یا سه شنبه میزارم واست

من هنز منتظرم هااااااااا

farshidshd
11-11-2009, 19:26
با عرض معذرت

پیغام خصوصیتو بخون

farshidshd
12-11-2009, 15:28
ببخشید که دیر شد
بفرمایید



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


موفق باشی

shokoufeye anar
12-11-2009, 21:18
يك دنيا ممنون
:11: