مشاهده نسخه کامل
: عملیات ریاضی
afshinaghasi
11-11-2007, 22:29
سلام
کسی میدونه چه جوری میشه عملیات ریاضی طولانی رو در editbox انجام داد و جواب گرفت مثلا اینرو :
(13*24)*((23^2*5)/4^2)
البته اینکارو میشه در یک متغیر انجام داد ولی آیا میشه تو editbox این کارو کرد و جواب گرفت مثل ماشین حسابهای مهندسی پیشرفته .:19: یا اینکه باید کد نوسی کرد.:20:
afshinaghasi
12-11-2007, 13:00
کسی نمیدونه
NoneForce
12-11-2007, 13:05
سلام
مدخل شماره 808236685 در Delphi Knowledge Base را مشاهده كنيد.
romixery
12-11-2007, 13:11
سلام
چرا نميشه!!! كار نشد نداره
من نميدونم براي اين كار كامپوننتي وجود داره يا نه ولي با كد نويسي مي توني اين كار رو انجام بدي.
اول بگو ببينم كار با دستورات كنترل Str رو بلدي؟ دستوراتي مثل pos,copy,delete؟
تقريبا با اين سه تا دستور مي توني كاري كه ميخواي رو انجام بدي. ولي كار پيچيده ايه.
طبق سوالي كه در پست اولتون نوشتين براي عملگر توان(^) نياز به نوشتن تابع دارين. براي *,+,- نيازي ندارين.
الگوريتمي كه من به ذهنم ميرسه اينه:
با دستور Pos موقعيت *,/,+,- رو در متنت بدست بيار. بعد با دستور Copy بايد عدد ها رو به يه متغير بريزي. بعد محتويات اين متغير رو در يه متغير integer (فعلا بحثمون در مورد اعشاريه) بريزي و بعد نصبت به اون عملگر كه بهش رسيده بودي ( با دستور pos) مي توني با هم جمع يا تفريق يا ... كني.
در مورد دستورات، Help دلفي كارسازه
موفق باشين
باي
چه جالب !!!
ولی خیلی گیج کننده
بای
F A R H A D
13-11-2007, 09:56
با سلام. شما برای این کار بهتره از روشی که سیستم عامل استفاده میکنه استفاده کنید.
با استفاده از تقدم عملگرها و اولویت آنها جمله ها رو درون پشته (stack) قرار بدی و بعد حل کنی.
کد نویسی نسبتا پیچیده ای داره
موفق باشی
مرد مباح
13-11-2007, 10:12
اگه رشتتون كامپيوتر هست توي درس Compiler يك چنين مسئله اي مطرح شده در سطح بزرگتر.
afshinaghasi
13-11-2007, 12:46
:31:خودم حلش میکنم از این سخت ترهم حل کردم اینکه چیزی نیست
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.