با سلام خدمت تمامی دوستان
من برای نوشتن پروزه درس محاسبات عددی احتیاج دارم که توسط سی یک معادله ریاضی رو از ورودی بگیرم. لطفا من رو راهنمایی کنید. :wink:
با سلام خدمت تمامی دوستان
من برای نوشتن پروزه درس محاسبات عددی احتیاج دارم که توسط سی یک معادله ریاضی رو از ورودی بگیرم. لطفا من رو راهنمایی کنید. :wink:
بابا دمت گرم
باید برنامه ای بنویسی که (عدد ) (متغیر ) (علامت ریاضی ) را از هم جدا کنه
تو می تونی یه رشته محتوی فرمول بگیری و بعد این ها رو جدا کنی و بعد تحلیل کنی
(((((( یه مثال بزن ) ))))))))))))) ببینم چی میخواهی
سلام
این راهی که شما معرفی کردین ، ساده نیست مثلا برای گرفتن معادلعه
sinx+cosx+lnx+x^2-7=0
تحلیل این معادله فکر نمی کنم با این روش آسون باشه
:cry:
sinx+cosx+lnx+x^2-7=0
خودت اگه دقت بکنی و برنامه نویس باشی باید برنامهای بنویسسی که از اول شروع کنه و تجزیه کنه
مثلا در اینجا تجزیه به این شکل است
ُsin
x (البته در اینجا بهتر است x را درون پرانتز بدهی تا برنامه فکر نکند با متغیر sinx سرو کار دارد
+
cos
ln
x
^
2
-
7
=
0
البته نوشتن چنین برنامه ای(تجزیه ) بسیار ساده است ولی تحلیلش سخته 99 درصد کار تحلیلشه هنوز هم که هنوزه نوشتن این تحلیل ها رویا است چون الگوریتم خاصی وجود ندارد
یا اگر وجود داشته باشد من اطلاعی ندارم
راستی من برنامه بالا را قبلا نوشتم اگه واقعا می خواهی $ دست تو جیبت کن
البته برنامه من کامل تر بود
در اصل یک برنامه C می گرفت و تجزیه می کرد
همونطور که گفتم این راه آسونی نیست.
راستی برای پیشرفت بد نیست که کمی هم به فکر رواج علوم باشیم بدون $
ظریفی می گفت : " من هر وقت مطلبی رو یاد می گیرم اون رو به دیگران یاد میدم تا بدونم که الان هم سطح بقیه هستم و باید مطالب جدید تری رو یاد بگیرم "
میشه اون ظریف رو معرفی کنی تا حالشو بگیرم
1- من پول زیادی نمی گیرم (چون حرفه ای نیستم )
اگه به فکر پیشرفت علومی من source برنامه ام رو می زارم البته همون برنامه ای که گفتم
(فکر کنم در مورد تو هم کار بکنه )
راستی من در مورد تحلیلش هیچی نمیدونم
این سورس تحت کامپایلر gcc (کامپایلر لینوکس ) کامپایل شده
و برنامه کامل و درستی نیست
راستی من اینو مجانی نمی دم من برنامه رو می دم بعدش اگه بدردت خورد که هر چی $ دادی که دادی اگه به دردت نخورد که هیچی
عجله نکن الان کار دارم پیداش کردم می زارم تو سایت
برنامه اخرم رو نتونستم پیدا کنم
این چند برنامه که اولین نسخه ها هستن رو بگیر
این برنامه سرشار از اشکاله (((البته در نسخه اخر حل شده بووود ))))
این برنامه فقط کمکت می کنه چجوری بنویسیش و اگخ عاقل باشی خودت میشینی و برنامه ات رو می نویسی
ممنون
برنامت رو داون لود کردم
بله این هم یکی از راه های پیشرفته ، چون باعث می شه ما یه خورده فکر کنیم
می دونید که نظام آموزشی ما کلا سیستم آماده حاظریه،
البته من هم نگفتم که بیا و یه سیستم بنویس بزار برای دان لود ، گفتم راهنمایی
و باز هم از شما ممنونم :wink:
باریکلا یادت باشه وقتی نوشتی برای دیباگ یه نسخشو بدی به من چون من تجربم یه خرده بیشتره
من هم روزی که نوشتم فکر کردم bug زیادی نداره ولی اگه دقت کنی اشغاله اشغاله
مثال :
printf ("hamid hmid");
در اینجا space بین دو حمید را تشخیص نمی دهد و bugi که خودت حتما فهمیدی space اضافی
و ....
که من همه این ها رو درست کردم
اما به نظرم یه source کوچک موثر تر باشه
اگه مشکلی داشتی بگی
The application is a simple win32 console application. It's very useful to evaluate expressions. Allowed symbols are +, -, /, *, ^, radix, trigonometric functions and others. You can use parenthesis.
http://sc4free.tripod.com/projects/parser.htm
اقا وحید ما میخواهیم معادلی حل کنیم نه جواب یک عبارت ریاضی
5+7+4343=?
این یک عبارت ریاضیه نه یه معادله
ایبته نمی دونم شاید شما صحیح بگین ولی اگه ممکنه روش کار با برنامه رو طوری که جواب عبارت بالا را بدست بیاورد بگویید
sinx+cosx+lnx+x^2-7=0
البته من با برنامه شما هم کار کردم و فقط جواب عبارت را بدست میاورد
برای حل معادلات از روش های تحلیل عددی استفاده می شود که احتمالا واحد آنرا گذرانده اید و یا خواهید گذراند. در تمام این روش ها نیاز است تا در تعدادی نقاط مقدار معادله را به ازای عددی مشخص بدست آورید....
http://cliodhna.cop.uop.edu/~hetrick/c-sources.html
موفق باشید
نمی دونم شاید حرف شما صحیح باشه