АЛГОРИТМЫ

Новости

Рассылка новостей

Форум

AlgoPascal

Редактор блок-схем

Статьи

О сайте

Контакты



Содержание - Численное интегрирование - Метод Симпсона от функции, заданой таблично

Вычисление интеграла методом Симпсона от функции, заданой таблично

Если заданы значения функции F(x) на интервале [a,b]: y, y, ..., y в равноотстоящих точках и n четно, то приближенное значение интеграла вычисляется по формуле:

=

Если нашли ошибку в алгоритме - сообщите!



Реализации алгоритма на различных языках:

Реализация алгоритма на C++
Реализация алгоритма на Delphi
Реализация алгоритма на Visual Basic 6

Блоксхемы:

Посмотреть блок-схему алгоритма
Скачать блок-схему алгоритма


Реализация алгоритма на AlgoPascal:

unit IntegralSimpsTableUnit;

declaration
(*
интегрируемая функция
*)
function F(X:Real):Real;

interface
    IntegralSimpsTable;
implementation

(*********************************************************
Вычисление интеграла методом Симпсона от функции, заданой
таблично.

Считается интеграл функции F на отрезке [a,b].

function IntegralSimpsTable(
    a,b:real;
    n:integer;
    y:array [0..n] of real):real;
*********************************************************)
function IntegralSimpsTable(
    const   a   :   Real;
    const   b   :   Real;
    const   n   :   Integer;
    const   y   :   array of Real):Real;
var
    i   :   Integer;
    h   :   Real;
begin
    h:=(b-a)/2;
    Result:=(y[0]-y[n])/2;
    i:=2;
    repeat
        Result:=Result+2*y[i-1]+y[i];
        i:=i+2;
    until not(i<=n);
    Result:=2*h*Result/3
end;


end.

 


Бочканов Сергей, Быстрицкий Владимир
Copyright © 1999-2004
При поддержке проекта MANUAL.RU