Привет ! Прошу вашей помощи нужно вычислить определенный интеграл тремя методами: порабол,примоугольников,трапеций. У меня есть три проги но одна не работает а другие две выдают разный результат помогите пожалуйста отладить.Проги в консольном приложении без элементов билдера
1)
#include <vcl.h>
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
double F(double X)
{return 1/(1+sqrt(X));
}
int main(int argc, char* argv[])
{const int h=10;
const int a=0;
const int b=1;
double Yn;
double Y0;
double Y1;
double X0;
int i;
double dx;
dx=(b+a)/h;
Yn=0;
X0=a;
for (i=1;i<=h;i++)
Y0=F(X0);
X0=X0+dx;
Y1=F(X0);
Yn=(Y1+Y0)*dx/2;
Yn=Yn+Y0;
cout<<"\n Yn="<<Yn<<endl;
getch();
return 0;
2)
#include <vcl.h>
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
double F(double X)
{return 1/(1+sqrt(X));
}
int main(int argc, char* argv[])
{const int h=10;
const double a=0.05;
const double b=0.95;
double Yn;
double Y0;
double X0;
int i;
double dx;
dx=(b+a)/h;
Yn=0;
X0=a;
for (i=1;i<=h;i++)
Y0=F(X0);
X0=X0+dx;
Yn=Yn+Y0;
cout<<"\n Yn="<<Yn<<endl;
getch();
return 0;
3)//---------------------------------------------------------------------------
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsuse
double F(double x)
{return 1/(1+sqrt(x));
}
int main(int argc, char* argv[])
{ const int h=6;
const int a=0;
const int b=1;
double yn;
double y0;
double x0;
double xn;
int i;
double dx;
double S0;
double S1;
double S2;
dx=(b-a)/2*h;
yn=0;
x0=a;
y0=F(a);
yn=F(b);
S0=0;
S1=0;
S2=0;
for (i=1; i<=2*h-1;i+2)
{xn=x0+i*h;
y0=F(x0);}
S0=xn*4;
for (i=2;i=2*h-2;i+2)
{xn=x0+i*h;
y0=F(x0);}
S1=xn*2;
S2=(S0+S1)*((b-a)/6*h);
cout<<"\n S2="<<S2<<endl;
getch();
return 0;
}