русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Программная реализация методов цифрового интегрирования

Рассмотрим примеры программ, использующие методы  цифрового интегрирования.

Пример 14.3.   Вычислить интеграл,  используя различные методы цифрового интегрирования. Процесс  интегрирования оформить в виде подпрограммы.

 

Решение: Для вычисления интеграла целесообразно использовать подпрограмму - функцию.

При этом в тексте программы необходимо:

1) Включить директиву дальнего вызова {$F+} либо выполнить необходимые настройки в среде программирования т.к. из одной функции вызывается другая. (Подключить к тексту программы, используемые ею директивы можно с помощью клавиш Ctrl-OO).
2) Описать тип функции.
3) В списке формальных параметров сослаться на тип (т.е. использовать параметр -Funftion).

 

Текст программы

Program pr_intF;
{ Вычислить интеграл,  используя различные методы цифрового
интегрирования. Процесс интегрирования оформить в виде подпрограммы}
Uses crt;
{$F+}       {Директива поддерживающая дальний вызов подпрограмм}
Type  par     =function(x:real):real;   {Описание типа функции}
Var C,D,Y                              :real;
n                                         :integer;
Function F1(x:real):real;
begin
F1:=x;
end;
Function pnint(F:par; a,b:real;n:integer):real;
{Метод прямоугольников с недостатком}
Var
s,h      :real;
i         :integer;
Begin
h:=(b-a)/n;      s:=0;
For i:=0 to n-1 do s:=s+f(a+i*h);
pnint:=h*s
End;
Function pkint(F:par; a,b:real;n:integer):real;
{Метод прямоугольников с избытком}
Var
s,h      :real;
i        :integer;
Begin
h:=(b-a)/n;     s:=0;
For i:=1 to n do s:=s+f(a+i*h);
pkint:=h*s
End;
Function psint(F:par; a,b:real;n:integer):real;
{Метод прямоугольников по средней линии}
Var
s,h      :real;
i         :integer;
Begin
h:=(b-a)/n;    s:=0;
For i:=1 to n do s:=s+f(a+i*h-h/2);
psint:=h*s
End;
Function tint(F:par; a,b:real;n:integer):real;
{Метод трапеций}
Var
s,h      :real;
i         :integer;
Begin
h:=(b-a)/n;    s:=f(a)/2+f(b)/2;
For i:=1 to n-1 do s:=s+f(a+i*h);
tint:=h*s
End;
Function sint(F:par; a,b:real;n:integer):real;
{Метод Симпсона}
Var
s,h      :real;
i         :integer;
Begin
h:=(b-a)/n;    s:=f(a)/2+f(b)/2;
if odd(n) then n:=n+1;
For i:=1 to n-1 do s:=s+(i mod 2+1)*f(a+i*h);
sint:=2*h*s/3
End;
Begin
ClrScr;
Writeln('Введите пределы интегрирования (C и D) а число подинтервалов n');
Readln (C,D,n);
{Y:=pnint(F1,C,D,n);}
{Y:=pkint(F1,C,D,n);}
Y:=psint(F1,C,D,n);
{Y:=tint(F1,C,D,n);}
{Y:=sint(F1,C,D,n);}
Writeln('Результат интегрирования' );
Writeln(' ':10,'Y=',Y:10);
Readln;
End.

 

Результат работы программы:

Введите пределы интегрирования (C и D) а число интервалов n
0 10 100

Результат интегрирования

Y= 5.000E+01

Просмотров: 12267

Вернуться в оглавление:Алгоритмические языки




Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.