Мегаобучалка Главная | О нас | Обратная связь


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



2016-01-05 268 Обсуждений (0)
Операторы присваивания 0.00 из 5.00 0 оценок




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

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

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

 

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

Попов Р.С.

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

 

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

 

Содержание:

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

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

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

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

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

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

 

 


 

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

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

 


 

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

и обозначаем

 
 
 
 
 
 
 
 
 
y=f(x)
y
x
B
 

соответствующие значения функции .

 

e

 

А

 

 


Полагаем приближенно,

где

 

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

Сложив приближенные равенства для

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

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

 

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


 

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

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

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

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

A
B
y
x
 

 


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

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)
<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.

 



2016-01-05 268 Обсуждений (0)
Операторы присваивания 0.00 из 5.00 0 оценок









Обсуждение в статье: Операторы присваивания

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (268)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)