|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
01.12.2016, 03:44 | #1 (permalink) |
Новичок
Регистрация: 01.12.2016
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Паскаль. Вычисление интегралов
Метод приближенного вычисления определенного интеграла должен быть запро-граммирован с помощью процедуры. Отрезок интегрирования, точность вычисления вводятся с клавиатуры, подынтегральная функция описывается с помощью функции пользователя. Распечатать: отрезок интегрирования, точность вычисления, приближенное значение определенного интеграла, значение интеграла, подсчитанное по формуле Ньютона-Лейбница. |
01.12.2016, 03:44 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Ранее на нашем форуме участники создавали аналогичные топики Нахождение интегралов Вычисление функции разложением ее в ряд, Паскаль Паскаль. Вычисление интеграла Приближенное вычисление интегралов Вычисление интеграла. Паскаль |
01.12.2016, 10:49 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
И Вам тоже здравствовать! Очень рады Вас видеть.
Я не слишком Вас побеспокою, если предложу ознакомиться с решением Вашей задачи? Нет? Ну, не взыщите, если что, просто не откликнуться на столь изысканно-вежливую просьбу о помощи было выше моих сил. Код:
Var AV,a,b,Res,eps:Real; Function F(t:Real):Real; begin F:=Sqr(Sin(t)/Cos(t))+Sqr(Cos(t)/Sin(t)); end; Function Antiderivative(t:Real):Real; begin Antiderivative:=-2*(Cos(t*2)/Sin(t*2)+t); end; Function Rectangle(Hr:Real):Real; var Sum,x:Real; begin Sum:=0; x:=a; repeat Sum:=Sum+Hr*F(x); x:=x+Hr; until x>b; Rectangle:=Sum; end; Procedure Calc_Int(var R:real); var dif,Hc:Real; begin Hc:=b-a; repeat dif:=Abs(Rectangle(Hc)-Rectangle(Hc/2)); Hc:=Hc/2; until dif<eps; R:=Rectangle(Hc); end; Begin Write('a = '); Readln(a); Write('b = '); Readln(b); Write('eps = '); Readln(eps); Calc_Int(Res); Writeln('Result: ',Res:0:8); AV:=Antiderivative(b)-Antiderivative(a); WriteLn('Accurate value: ', AV:0:8); Readln End. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Метки |
интегралы, паскаль |
Опции темы | |
Опции просмотра | |
|
|