Операторы присваивания

Курсовая работа

По программированию и численным методам

На тему: Методы приближенного вычисления интеграла

Выполнил студент группы ТП-13-1

Попов Р.С.

Проверила: Давыдова А.В.

Днепропетровск

Содержание:

1. Постановка задачи.

2. Теоретические сведения.

3. Блок схема программы.

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

5. Использованные операторы.

6. Результаты.

1.С помощью подпрограммы function вычисляем поочередно тремя способами приближенного вычисления значения интеграла F(x)= Операторы присваивания - student2.ru

Интервал (1, 2)разбит на N частей. Ищем площадь для первого значения N=10, затем умножаем N на 2. Процесс продолжается до тех пор, пока относительная ошибка вычисления интеграла не станет меньше заданной точности, то есть пока ошибка не станет меньше ɛ = 0.0001.

2.1 Способ прямоугольников. Для вычисления интеграла Операторы присваивания - student2.ru делим отрезок Операторы присваивания - student2.ru на n равных частей точками

Операторы присваивания - student2.ru

и обозначаем

Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru  
y=f(x)
y
x
B
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
соответствующие значения функции Операторы присваивания - student2.ru .

e

А

Полагаем приближенно, Операторы присваивания - student2.ru

где

Операторы присваивания - student2.ru

Это означает, что площадь каждой полоски, на которые разбивается криволинейная трапеция аABb, заменяется площадью прямоугольника с высотой Операторы присваивания - student2.ru и с основанием Операторы присваивания - student2.ru

Сложив приближенные равенства для Операторы присваивания - student2.ru

Операторы присваивания - student2.ru

2.2 Способ трапеции.Как и в способе прямоугольников, делим отрезок Операторы присваивания - student2.ru

Операторы присваивания - student2.ru

y=f(x) Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
y Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
Операторы присваивания - student2.ru Операторы присваивания - student2.ru  
А
B
Это означает, что площадь каждой плоскости, на которые разбивается криволинейная трапеция аABb, заменяется площадью обычной прямолинейной трапеции

Складывая приблеженные равенства для Операторы присваивания - student2.ru получаем формулу трапеции

Операторы присваивания - student2.ru

2.3 Способ парабол (Симпсона).Разбиваем отрезок Операторы присваивания - student2.ru и на 2 N равных частей

Операторы присваивания - student2.ru

точками и обозначим через

Операторы присваивания - student2.ru

соответствующие значения функции Операторы присваивания - student2.ru . Рассматриваем двойной частичный отрезок Операторы присваивания - student2.ru и проводим дугу параболы через точку

Операторы присваивания - student2.ru

Заменяем площадь каждой криволинейной плоскости Операторы присваивания - student2.ru , Операторы присваивания - student2.ru площадью соответствующей параболической полоски (полоски ограниченной сверху дугой параболы).

A
B
y
x
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
Операторы присваивания - student2.ru
 

Тогда для приближенного вычисления площади всей криволинейной трапеции aABb получаем формулу

Операторы присваивания - student2.ru

3.Метод прямоугольников

function s(n) программы
i= 0, n-1
y= (sqrt(x^2-0.16)/x   sum=sum+y
s=h *sum sum=0
Конец программы
a=1 b=2



function s(n) программы
3.Метод трапеции

НЕТ
ДА
a=1; b=2
i= 0, n
y= (sqrt(x^2-0.16)/x  
Конец программы
i=n
f=x sum=sum+f



Метод Симпсона

Начало программы
N=10 S1=S(n) N=n*2 S2=S(n)
Операторы присваивания - student2.ru <0.001  
y= (sqrt(x^2-0.16)/x print *,'s=',s2, y  
s1=s2 n=2*n s2=s(n)
ДА
НЕТ  
Конец программы



4. Метод прямоугольников

real s2

g=0.0001

k=0

n=10

s1=s(n)

n=2*n

s2=s(n)

1 if (abs(s1-s2)/s1 < g) then

print 4,s2

goto 3

else

k=k+1

s1=s2

n=2*n

s2=s(n)

goto 1

end if

3 print *, 'iter=',k

4 format (5x,'s=',F10.7)

end

function s(n)

a=1

b=2

h=(b-a)/n

do i=0,n-1

y=sqrt((a+i*h)**2-0.16)/(a+i*h)

sum=sum+y

end do

s=h*sum

sum=0

end

Метод трапеции

real s2

g=0.0001

k=0

n=10

s1=s(n)

n=2*n

s2=s(n)

1 if ((abs(s1-s2))/s1 < g) then

print 4,s2

goto 3

else

k=k+1

s1=s2

n=2*n

s2=s(n)

goto 1

end if

3 print *, 'iter=',k

4 format (5x,'s=',F10.7)

end

function s(n)

a=1

b=2

h=(b-a)/n

do i=0,n

y=sqrt((a+i*h)**2-0.16)/(a+i*h)

if ((i==0).or.(i==n)) then

f=y

goto 1

else

f=2*y

goto 1

end if

1 sum=sum+f

end do

s=(h/2) *sum

sum=0

end
4.Метод Симпсона

g=0.0001

k=0

n=10

s1=s(n)

n=2*n

s2=s(n)

1 if ( abs((s1-s2)/s1)<g ) then

print 4,s2

goto 3

else

k=k+1

s1=s2

n=2*n

s2=s(n)

goto 1

end if

3 print *, 'iter=',k

4 format (5x,'s=',F10.7)

end

function s(n)

a=1

b=2

h=(b-a)/n

do i=0,n

y=sqrt((a+i*h)**2-0.16)/(a+i*h)

if ((i==0).or.(i==n)) then

f=y

goto 2

end if

if (mod (i,2)==0) then

f=2*y

goto 2

else

f=4*y

goto 2

end if

2 sum=sum+f

end do

s=(h/3)*sum

end

Оператор END

Каждый программный модуль должен заканчиваться рядком END, который показывает транслятору конец модуля.

Вводо-вывод данных

Общая форма операторов READ, PRINT под руководительством списка

READ*, список

PRINT*, список

Список - список переменных в котором имя каждой переменной отделено от следующего имени запятой. Каждый оператор READ начинает чтение с новой записи данных, даже если в предыдущей записи остались считанные данные. Каждый оператор PRINT начинает печать с новой строки.

Операторы присваивания

Используются для определения значений переменной любого типа элементу массива или подстроки. Это один из наиболее часто используемых операторов в инженерных программах. Существует арифметический, логический и текстовый операторы присваивания. Общая форма оператора присваивания:

A=E

где A - идентификатор переменной, элемент массива или подстрока; E - арифметическое, логическое или текстовое выражение. Выполнение оператора состоит из трех этапов: Вычисляется правая часть, т.е. получается значение арифметического, логического или текстового типа. Если тип полученного значения отличен от типа идентификатора A, то производится перевод полученного значения в тип идентификатора A. Окончательно полученное значение заносится в ячейки памяти, отведенные компилятором для идентификатора A. Для логического оператора присваивания шаг 2) опускается, т.к. правая часть E обязана принимать логическое значение TRUE или FALSE.

Наши рекомендации