PDA

View Full Version : محاسبه عبارت



136464
چهارشنبه 12 تیر 1387, 12:39 عصر
چطوری می توان یک رشته به این شکل (3+2*6) را محاسبه کرد؟در حالی که type آن string است

Sajjad.Aghapour
چهارشنبه 12 تیر 1387, 12:49 عصر
سلام دوست عزیز....
کافیه operand ها رو از operator هاشون جدا کنی و بعد با لحاظ تقدم ها عملیات رو انجام بدی..

البته برای برنامه تبدیلات میانوندی،پیشوندی و پسوندی در ساختمان داده ها یک کلاس برای محاسبه نتیجه نوشتم.البته با لیست پیوندی(به جای پشته).....
شاید به دردت بخوره......

ASKaffash
چهارشنبه 12 تیر 1387, 15:17 عصر
سلام
یک راه دیگر اینکه عبارت را مقابل دستور Select قرار دهید و درون یک SP بصورت پویا با استفاده از EXEC آن را اجرا کرده ونتیجه محاسبه را تحویل شما دهد در واقع تفسیر عبارت محاسباتی را به گردن SQL بیاندازید
مشکل داشتی بگو .

Sajjad.Aghapour
چهارشنبه 12 تیر 1387, 18:00 عصر
میشه بیشتر توضیح بدید.......