با سلام
ببخشید من یک رشته مثل زیر دارم:
s=1+2(3^7)/10
میخوام ببینم با دسنور یا تکنیک خاصی، حاصل جمله بالا چند میشود و حاصلش را در متغیر A بریزم؟
با تشکر
با سلام
ببخشید من یک رشته مثل زیر دارم:
s=1+2(3^7)/10
میخوام ببینم با دسنور یا تکنیک خاصی، حاصل جمله بالا چند میشود و حاصلش را در متغیر A بریزم؟
با تشکر
اگه s یه متغیره میتونی منهای 48 کنی یا یه صفر ازش کم کنی تا از حالت رشته خارج بشه
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
الان دقیقا نمیدونم عملی جواب میده یا نه چون الان قابل تست نیست
در واقع میخوام ماشین حساب بسازم
( s یک متغیر رشته ای هست)
من اعداد و پرانتز تایپ میکنم و هر چی تایپ کردم تبدیل به رشته میکنم و میرزمش داخل s و در آخر این رشته رو با چیزی که شما گفتید حاصلش رو حساب میکنم
والا چی بگم من رشته الکترونیکم و خیلی زبان سی بلد نیستم و حتی 2 تا کتاب سی رو هم خوندم ولی حتی این چیز ساده ه ای که شما گفتید توی عمرم یکبار هم ندیدم!
متاسفانه بارها خواستم سی رو حرفه ای یاد بگیرم اما اکثر کتابهای بازار شبیه هم و یا خیلی ساده و یا خیلی سنگین و بدرد نخور.
من یک چیزی میخوام کاربردی باشه
ما این زبان سی رو در میکروکنترلرها استفاده میکنم!
الان دقیقا نمیدونم عملی جواب میده یا نه چون الان قابل تست نیست
در واقع میخوام ماشین حساب بسازم
( s یک متغیر رشته ای هست)
من اعداد و پرانتز تایپ میکنم و هر چی تایپ کردم تبدیل به رشته میکنم و میرزمش داخل s و در آخر این رشته رو با چیزی که شما گفتید حاصلش رو حساب میکنم
والا چی بگم من رشته الکترونیکم و خیلی زبان سی بلد نیستم و حتی 2 تا کتاب سی رو هم خوندم ولی حتی این چیز ساده ه ای که شما گفتید توی عمرم یکبار هم ندیدم!
متاسفانه بارها خواستم سی رو حرفه ای یاد بگیرم اما اکثر کتابهای بازار شبیه هم و یا خیلی ساده و یا خیلی سنگین و بدرد نخور.
من یک چیزی میخوام کاربردی باشه
ما این زبان سی رو در میکروکنترلرها استفاده میکنم!
شما اموزش زبان c اقای ابریشمی رو بخون خیلی روون و قابل فهم مفاهیم پایه ای c رو توضیح داده
ببخشید با این دستوری که شما گفتید مشکل من حله؟
توی c توان نداریم باید براش یه تابع بنویسی تا حاصلشو بدست بیاری قبل از پرانتز هم باید ضربدر بزاری
دوست عزیز برای همچین عباراتی شما دو تا راه داری
1-اینکه اینها رو به عبارات لهستانی تبدیل کنی و بعد جواب و از طریق پشته بدست بیاری(برای ایجادش کتابهای ساختمان داده باید بخونی)
2-راه قانونی تر اینکهع یک عدد lexical analyzer و پارسر -در واقع یه کامپایلر کوچیک-درست کنی( برای ایجادش کتابهای طراحی کامپایلر باید بخونی)
و اینطور که از پستهای شما پیداست انجام هیچ کدوم از اینا کار شما نیست(کتاب جناب ابریشمی رو هم بخونی نمی تونی اینا رو بنویسی لول) شما کلن یه ماشین حساب ساده درست کن و ماشین حساب پیشرفته رو بذار بعهده مهندسای کامپیوتر بدور از شوخی دارم می گم وقت با ارزشت و بذار رو رشته خودت لول
Last edited by Mehran NZ; 12-10-2010 at 22:11.
استفاده از عبارات لهستانی و پشته کار شاخی نیست
کافیه که به کتاب های ساخنمان داده رجوع کنی
و خ راحت الگوریتم هاش رو کپی کنی
پایمده باشی
اگه قرار به کپی پیست کردن باشه که دیگه کتاب هم نمی خواد این همه کد تو نت هست در این مورد خودم هم فکر کنم کدش و نوشته بودم اینجا قرار داده بودم(و تا جایی که یادم میاد به این آسونیها هم که شما دارین می فرمایین نبود اصولا تو کلاس ما برای ساختمان داده فقط من رفته بودم دنبال کد نویسیهاش و برای من هم آسون نبود برم توش)
ایشون نگفت می خواد کپی پیست کنه اومد گفت تکنیک خاصش چیه لول ما هم گفتیم این راهش!
ببین دوست عزیز من بازم بهت می گم اینا مباحثی نیست که شما یکی دو روزه یاد بگیری وقت رشته تخصصی خودت و برای اینا نذار شما همون پشته رو می تونی کپی پیست کنی یا بدی یکی برات بنویسه دیگه تصمیم با خودت!
در مورد روش دوم هم من فقط یه ایده بهت میدم که قراره از کجا شروع کنی شاید یه روزی روزگاری خواستی از این روش هم بنویسی این روش اصلی و استاندارده
مثلا برای دریافت رشته as b*abb من برنامه زیر رو اینطور نوشتم که شما می تونی رشته های خودت و تعریف کنی!
این که نمودارشه
اینم کدش ساده و خلاصه
و این هم یک عدد کامپایلر ساده برای پوست فیکس و اسمبل کردن عبارات ریاضی ساده از کتاب Design and impletation of compilers که من فقط print هاش و cout کردم وگرنه اصلا همون با c نوشته شده بودکد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Last edited by Mehran NZ; 05-09-2010 at 23:41.
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)