Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР-13. Численное интегрирование (FORTRAN,Excel,...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.01 Mб
Скачать

Вычисление определенного интеграла (Контрольные вопросы – правильные варианты)

КАТЕГОРИЯ 1. Фрагменты программы для расчета определенного интеграла.

Формула метода левых прямоугольников имеет вид

.

implicit none ! обязательное обявление имен

real Func ! подинтегральная функция

real x ! текущая абсцисса

real y ! текущее значение функции

real h ! шаг разбиения интервала интегрирования

real a,b ! границы интервала интегрирования [a,b]

real Sum ! текущая сумма

real IntLeft ! интеграл

integer i ! счетчик точек

integer n ! число разбиений промежутка [a,b]

...

! расчет интеграла методом левых прямоугольников

h=(b-a)/n ! шаг интегрирования

Sum=0 ! начальное значение суммы

do i=0,n-1 ! проход по номерам точек по оси Х

x=a+i*h ! расчет текущего Х

y=Func(x) ! расчет текущего Y

Sum=Sum+y*h ! текущая сумма

enddo ! конец цикла

IntLeft=Sum ! интеграл методом левых прямоугольников

Формула метода правых прямоугольников имеет вид

.

implicit none ! обязательное обявление имен

real Func ! подинтегральная функция

real x ! текущая абсцисса

real y ! текущее значение функции

real h ! шаг разбиения интервала интегрирования

real a,b ! границы интервала интегрирования [a,b]

real Sum ! текущая сумма

real IntRight ! интеграл

integer i ! счетчик точек

integer n ! число разбиений промежутка [a,b]

...

! метод правых прямоугольников

Sum=0 ! начальное значение суммы

do i=1,n ! проход по номерам точек по оси Х

x=a+i*h ! расчет текущего Х

y=Func(x) ! расчет текущего Y

Sum=Sum+y*h ! текущая сумма

enddo ! конец цикла

IntRight=Sum ! интеграл

КАТЕГОРИЯ 2. Фрагменты программы для расчета определенного интеграла.

Формула трапеций имеет вид:

implicit none ! обязательное обявление имен

real Func ! подинтегральная функция

real x ! текущая абсцисса

real y ! текущее значение функции

real h ! шаг разбиения интервала интегрирования

real a,b ! границы интервала интегрирования [a,b]

real Sum ! текущая сумма

real IntTrap ! интеграл

integer i ! счетчик точек

integer n ! число разбиений промежутка [a,b]

...

! метод трапеций

Sum=Func(a)+Func(b) ! начальное значение суммы

do i=1,n-1 ! проход по номерам точек по оси Х

x=a+i*h ! расчет текущего Х

y=Func(x) ! расчет текущего Y

Sum=Sum+2*y ! текущая сумма

enddo ! конец цикла

IntTrap=h/2*Sum ! интеграл

Формула Симпсона (парабол) имеет вид:

implicit none ! обязательное обявление имен

real Func ! подинтегральная функция

real x ! текущая абсцисса

real y ! текущее значение функции

real C ! коэффициент при текущем y

real h ! шаг разбиения интервала интегрирования

real a,b ! границы интервала интегрирования [a,b]

real Sum ! текущая сумма

real IntSimp ! интеграл

integer i ! счетчик точек

integer n ! число разбиений промежутка [a,b]

...

! метод Симпсона (парабол)

Sum=Func(a)+Func(b) ! начальное значение суммы

do i=1,n-1 ! проход по номерам точек по оси Х

x=a+i*h ! расчет текущего Х

y=Func(x) ! расчет текущего Y

if((-1)**i > 0) then ! проверка на четность i

C=2 ! коэффициент при четных слагаемых

else

C=4 ! коэффициент при нечетных слагаемых

endif

Sum=Sum+C*y ! текущая сумма

enddo ! конец цикла

IntSimp=h/3*Sum ! интеграл

КАТЕГОРИЯ 3. Функция для расчета подинтегральной функции.

Подинтегральная функция f(x)= .

Вариант 1

! подинтегральная функция

real function Func(x) ! заголовок функции

implicit none ! обязательное обявление имен

real x ! значение аргумента

Func=(x**2-4.1)/(x**4+1) ! значение функции-результат

end function Func ! конец функции

Вариант 2

! подинтегральная функция

function Func(x) ! заголовок функции

implicit none ! обязательное обявление имен

real x ! значение аргумента

real Func ! объявление имени функции

Func=(x**2-4.1)/(x**4+1) ! значение функции-результат

end function ! конец функции

Вариант 3

! подинтегральная функция

function Func(x) ! заголовок функции

Func=(x*x-4.1)/(x**4+1) ! значение функции-результат

end ! конец функции

Вариант 4

! подинтегральная функция

real function Func(x) ! заголовок функции

implicit none ! обязательное обявление имен

real x ! значение аргумента

Func=(x**2-4.1)/(x**4+1) ! значение функции-результат

end ! конец функции

64