سلام من دنبال کد برنامه ای میگردم که یه انتگرال ساده رو در #c حساب کنه با تشکر
Printable View
سلام من دنبال کد برنامه ای میگردم که یه انتگرال ساده رو در #c حساب کنه با تشکر
روش انتگرال گیری سیمپسون:
یه همچین کارایی رو با روش های عددی (محاسبات عددی) یا numerical methods انجام می دهند. اگه numerical methods یا integral algorithm رو سرچ کنی به نتایج خوبی می رسی.کد://Simpson integration algorithm
using System;
//calculate the integral of f(x) between x=a and x=b by spliting the interval in step_number steps
class Integral
{
public delegate double Function(double x); //declare a delegate that takes and returns double
public static double integral(Function f,double a, double b,int step_number)
{
double sum=0;
double step_size=(b-a)/step_number;
for(int i=0;i<step_number;i=i+2) //Simpson algorithm samples the integrand in several point which significantly improves //precision.
sum=sum+(f(a+i*step_size)+4*f(a+(i+1)*step_size)+f(a+(i+2)*step_size))*step_size/3; //divide the area under f(x) //into step_number rectangles and sum their areas
return sum;
}
}
class Test
{
//simple functions to be integrated
public static double f1( double x)
{
return x*x;
}
public static double f2(double x)
{
return x*x*x;
}
public static void Main()
{//output the value of the integral.
Console.WriteLine(Integral.integral(new Integral.Function(f1),1,10,20));
}
}
برنامه حل انتگرال سیمسون به زبان borland c
با سلام من این برنامه رو نوشته ام ولی اعداد را بصورت دقیق محاسبه نمیکند
لطفا اگه کسی برنامه انتگرال سیمسون با borland c رو داره بذاره .ممنون
ساده ترین روش استفاده از روش مونته کارلو هست که مجوع نمونه های تصادفی رو میتونی حساب کنی. هر چقدر نمونه هات بیشتر باشن، جوابت دقیقتره. تو اینترنت زیاد میتونی در باره این روش مطلب پیدا کنی.نقل قول: