PDA

View Full Version : دو سوال ریاضی (مهم)



مطهر
دوشنبه 01 دی 1382, 22:58 عصر
سلام
1) اگه بخواهیم نمودارهای ریاضی (مثل توابع مثلثاتی ولگاریتمی و....) را رسم کنیم چکار کنیم ؟
2 ) شاید دیده باشید که بعضی ماشین حسابها و یا نرم افزارها مشتق و انتگرال را به صورت تابع حساب می کنند (مثل : مشتق تابع X^2 که به صورت X*2 است ) روش الگوریتم و برنامه نویسی این چنین برنامه هایی چگونه است ؟

با تشکر از تمام دوستان

Farhad.B.S
سه شنبه 02 دی 1382, 14:03 عصر
1.برای رسم توابع :




Dim Fx, x As Long

For x = 0 To 180 'you can extend it
Fx = Sin(x)
Picture1.PSet (x, Fx), vbRed
Next i



کد بالا نمودار سینوس ها رو رسم میکنه .(در بازه 0 تا پی) .

برای این که برنامه شما قادر باشه فرمول یه تابع رو از کاربر بگیره و با مقدار دادن مجهول ، حاصل تابع در اون نقطه رو بد ست بیاره ، میتونید از کنترل Script control مایکروسافت استفاده کنید .


2.منظورتون اینه که در ازای مشتق تابع ، یه تابع تولید کنید ؟

مطهر
جمعه 05 دی 1382, 23:18 عصر
خیلی ممنون به خاطر جوابتان
قطعه کدی که فرستاده اید را امتحان کنید متوجه معایب آن خواهید شد . معایب آن عدم دقت کافی در رسم نمودار می باشد


2.منظورتون اینه که در ازای مشتق تابع ، یه تابع تولید کنید ؟
به مثال توجه کنید
x^2---مشتق----> 2*X
در ازای تابع ,, مشتق تابع را تولید کند

روح اله معینی زاده
یک شنبه 07 دی 1382, 11:45 صبح
با سلام خدمت دوست گرامی

شما می توانید برای اینکه دقت رسم بالا رود، با اضافه کردن Step به دستور For این نقیصه را بر طرف کنید. در دستور بالا هم همانطور که فرموده‌اید اشکالی وجود دارد که قابل عرض نیست (کوچک اما مهم) پس قسمت هایی از کد بالا را مجدد می نویسم.



for x = 0 to 180 step .001

و نیز


Next x


البته توجه داشته باشید که با کمی حوصله می توانید کد رسم صحیح را انجام دهید، ولی اگر حوصله ندارید و تمام کرده اید، می توانید درخواست خرید بدهید :oops: یا به آدرس زیر که قبلا بنده جواب داده ام مراجعه نمایید.

http://www.barnamenevis.org/forum/viewtopic.php?t=4444&highlight=


البته مساوی باید در انتهای آدرس باشد.

با احترام- خدانگهدار.

BehnamPro
دوشنبه 15 دی 1382, 11:27 صبح
سلام.آقای Farhad.B.S لطفا در باره Script Control بیشتر توضیح بدین. ظاهراً کدی را در هنگام اجرای برنامه اضافه می کنه.طرز کارش چه جوریه؟

Farhad.B.S
دوشنبه 15 دی 1382, 12:13 عصر
این کنترل عبارات مختلف رو بر اساس سینتکس VBScript اجرا میکنه، یعنی شما یه قطعه کدی رو بهش میدید و اون اجرا میکنه.
برای اجرای عبارات یک خطی میتونید از تابع eval این کترل استفاده کنید :


MsgBox ScriptControl1.Eval("10*10")


و برای اجرای عبارات چند خطی از تابع ExecuteStatment میتونید استفاده کنید.
برای تست دستورات مختلف از این روش استفاده کنید :

1.یه تکست باکس و باتون بر روی فرمتون قرار بدید و خاصیت Multiline تکست باکس رو هم به true ست کنید.

2.یه اسکریپت کنترل بر روی فرمتون قرار بدید.

3.در رویداد Click مربوط به باتون کد زیر رو بنویسید :



ScriptControl1.ExecuteStatement (Text1)