Смекни!
smekni.com

Turbo Pascal (стр. 4 из 4)

4. Проверка правильности функционирования программы.

Введём определённые ранее исходные данные.

a=1; b=2; e=0.0001;

c=1,9; d=3;

При c=1,90 и d=3,00 значение определённого интеграла

0,113 с точностью до 0,00010

Количество разбиений отрезка [1,00;2,00]: 4000

c=2,05; d=3,05

При c=2,05 и d=3,05 значение определённого интеграла

0,110 с точностью до 0,00010

Количество разбиений отрезка [1,00;2,00]: 4000

c=2,2; d=3,1

При c=2,20 и d=3,10 значение определённого интеграла

0,108 с точностью до 0,00010

Количество разбиений отрезка [0,00;2,00]: 4000

Для проверки программы интегрирования вычислим определённый интеграл

Turbo Pascal с заданной точностью.

a=0; b=3.14; eps=0.0001.

Определённый интеграл

Turbo Pascal=2.

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

Program kursach2;

uses crt;

var

a,b,c,d,e,y1,y2,h,x:real;

n:longint;

begin

clrscr; textcolor(11);

writeln(' ╔═══════════════════════════════════════════════════════════════╗');

writeln(' ║ Этапрограммавычисляетопределённыйинтегралотфункции║');

writeln(' ║ ║');

writeln(' ║ x ║');

writeln(' ║ f(x)= ------------- ║');

writeln(' ║ (x^4+d*x^2+c) ║');

writeln(' ║ ║');

writeln(' ║ наотрезке [a,b] спогрешностью e. ║');

writeln(' ╚═══════════════════════════════════════════════════════════════╝');

writeln;

write(' Введителевуюграницуинтервала: '); readln(a);

write(' Введите правую границу интервала: '); readln(b);

write(' Введите погрешность вычислений: '); readln(e);

clrscr;

writeln(' *****************************************');

write(' Введите значения c: '); read(c);

write(' Введите значения d: '); read(d);

n:=2000; y2:=0;

repeat

h:=(b-a)/n; y1:=y2;

y2:=0; x:=a+h;

repeat

y2:=y2+h*x/(x*x*x*x+d*x*x+c);

{y2:=y2+h*sin(x);}

x:=x+h;

until x>b;

n:=2*n;

if n>255000 then

begin

ClrScr; textcolor(red); writeln;

writeln(' **** Сработала защита от зацикливания ****');

readkey; exit;

end;

until abs(y1-y2)<e;

ClrScr;

writeln;

writeln('*******************************************************************');

writeln('При с=',c:3:2,'и d=',d:3:2,'значение определённого интеграла',y2:5:3);

writeln(' с точностью до ',e:6:5 );

writeln;

writeln(' Количество разбиений отрезка [',a:3:2,';',b:3:2,']: ',n div 2 );

writeln('*******************************************************************');

readkey;

end.


Список литературы

1. Методические указания по выполнению курсовой работы «Алгоритмические языки и программирование»

№1525, Рязань: РРТИ, 1988.

2. Методические указания «Модульное программирование на Турбо Паскале» №3037,В.С.Новичков, Н. И. Парфилова, А. Н. Пылькин, Рязань: РГРТА, 2000.

3. «Программирование на языке ПАСКАЛЬ», Г. Л. Семашко, А. И. Салтыков, Москва «Наука», 1988.

4. «Программирование на языке ПАСКАЛЬ», О. Н. Перминов, «Радио и связь», 1988.