Приближенное вычисление определенного интеграла при помощи квадратурной формулы Чебышева — страница 4

  • Просмотров 2168
  • Скачиваний 385
  • Размер файла 61
    Кб

математики“ 4. Копченова и Марон “Вычислительная математика в примерах и задачах” 5. Вольвачев А.Н., Крисевич В.С. Программирование на языке Паскаль для ПЭВМ ЕС. Минск.: 1989 г. 6. Зуев Е.А. Язык программирования Turbo Pascal. М.1992 г. 7. Скляров В.А. Знакомьтесь: Паскаль. М. 1988 г. 6. Листинг программы. Программа написана на языке Tubro Pascal 7.0 для MS-DOS. Ниже приведен ее листинг: program integral; uses crt; const n=5; k=-0.832498; l=-0.374541; z=0.0; type aa=array[1..n] of real; var x,y:aa; a,b,h,ich:real; {

заполнение х-сов в массив х[5] } procedure vvod(var a,b:real;var c:aa); var i:integer; t:aa; Begin t[1]:=k; t[2]:=l; t[3]:=z; t[4]:=l; t[5]:=k; for i:=1 to n-1 do c[i]:=((b+a)/2+(b-a)/2*t[i]); for i:=n-1 to n do c[i]:=1 - c[n+1-i]; end; { заполнение y-ков в массиве у[5] } procedure form(var x:aa; var y:aa); var i:integer; Begin for i:=1 to n do y[i]:=sin(x[i]); {функция} end; { процедура для расчета интеграла по квадратурной формуле Чебышева } procedure cheb(var y:aa;var ich:real); var i:integer; Begin ich:=0; for i:=1 to n do ich:=ich+y[i]*h; end; { процедура вывода таблицы} procedure tabl; var i:integer; Begin writeln('

___________________________________ '); writeln('| i | t | x | y |'); writeln(' ___________________________________ '); writeln('| 1 |',k:9:6,'|',x[1]:9:6,' |',y[1]:9:6,'|'); writeln('| 2 |',l:9:6,'|',x[2]:9:6,' |',y[2]:9:6,'|'); writeln('| 3 |',z:9:6,'|',x[3]:9:6,' |',y[3]:9:6,'|'); writeln('| 4 |',l:9:6,'|',x[4]:9:6,' |',y[4]:9:6,'|'); writeln('| 5 |',k:9:6,'|',x[5]:9:6,' |',y[5]:9:6,'|'); writeln(' ___________________________________ '); end; Begin clrscr; writeln(' П Р О Г Р А М М А Д Л Я В Ы Ч И С Л Е Н И Я'); writeln(' О П Р Е Д Е Л Е Н Н О Г О И Н Т Е Г Р А Л А '); writeln; writeln('Введите границы интегрирования a,b:'); readln(a,b); vvod(a,b,x); h:=(b-a)/n; writeln('h=',h:9:6); form(x,y); cheb(y,ich);

tabl; writeln('I=',ich:8:6); end. Вывод результата : П Р О Г Р А М М А Д Л Я В Ы Ч И С Л Е Н И Я О П Р Е Д Е Л Е Н Н О Г О И Н Т Е Г Р А Л А Введите границы интегрирования a,b: 0 1.5708 h= 0.314160 ____________________________ | i | t | x | y | ____________________________ | 1 |-0.832498| 0.131556 | 0.131177| | 2 |-0.374541| 0.491235 | 0.471716| | 3 | 0.000000| 0.785400 | 0.707108| | 4 |-0.374541| 0.508765 | 0.487099| | 5 |-0.832498| 0.868444 | 0.763325| ____________________________ I=0.804383