Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб.роб..doc
Скачиваний:
19
Добавлен:
06.11.2018
Размер:
5.92 Mб
Скачать

Лабораторна робота № 9

Тема: Turbo Pascal. Ітераційні циклічні програми.

Мета: Формування умінь складання програм для розв’язування рівнянь методом ітерації алгоритмічною мовою високого рівня Pascal.

1 Теоретичні відомості

Особливістю ітераційних циклів є те, що наперед невідома кількість циклів, які виконуються. Обчислення в циклі припиняється при досягненні заданої точності. Ітераційні цикли будуються за допомогою операторів умовного і безумовного переходів, а також використовуються структури організації циклів з передумовою чи з післяумовою.

Для заданого рівняння необхідно:

- скласти графічний алгоритм для визначення кореня рівняння із заданою похибкою методом ітерацій. В алгоритмі передбачити лічильник кількості ітерацій;

- скласти програму для ЕОМ;

- розв’язати рівняння на ЕОМ в діалоговому режимі;

- провести аналіз одержаного результату.

2 Хід роботи

2.1 Постановка задачі

Знайти корінь рівняння cos(x)+2x-5=0 на інтервалі [0;1] з точністю =0,0001, користуючись методом ітерацій.

2.2 Розв’язок задачі

Запишемо рівняння у вигляді xi+1=(5-cos(xi))/2 і наведемо початкове значення кореня х=0,5 .

2.3 Графічний алгоритм

Графічний алгоритм показаний на рис. 9.1.

2.4 Таблиця ідентифікації змінних

Змінна

xi

xi+1

t

Кількість ітерацій

Ідентифікатор

x

y

t

e

n

2.5 Програма мовою Pascal та результати обчислень

Program IT{ітерації};

Var

y,x,e,t:real;

n:integer;

Begin

x:=0.5;

e:=0.0001;

n:=0;

repeat

y:=(5-cos(x))/2;

t:=abs(x-y);

x:=y;

n:=n+1;

until t<e;

ні

так

Рисунок 9.1 – Графічний алгоритм

writeln('Результати обчислень: ');

writeln(' Корінь рівняння =',y:6:3);

writeln(' Кількість ітерацій =',n);

end.

Результати обчислень:

Корінь рівняння = 2.995

Кількість ітерацій = 7

3 Контрольні запитання

  1. Яка відмінність ітераційного циклу від циклу з регулярною зміною аргументу?

  2. Які дані необхідні для організації циклу?

  3. Як одержати ітераційну формулу для застосування методу ітерацій?

  4. Яка умова закінчення ітераційних обчислень?

  5. Як отримати кількість виконаних ітераційних циклів?

  6. Який оператор керує виходом з циклу?

  7. Побудуйте програму, використавши структуру циклу з передумовою.

Варіанти завдань наведені в таблиці 9.1 .

Примітка. При використанні методу Ньютона необхідно визначити, яка з крайніх точок інтервалу ізоляції буде рухомою.

Таблиця 9.1 –Варіанти завдань

№ ва-ріанту

Рівняння

Інтервал ізоляції кореня

Похибка обчислення

Метод роз- в`язування

1

2

3

4

5

1

4x3-5x2+3x=0

[1;2]

0,0001

ітерацій

2

х3-x-1=0

[1;2]

0,001

Ньютона

3

x3-3x2+4x-9=0

[2;3]

0,001

ітерацій

4

x3+3x-1=0

[0;1]

0,001

Ньютона

5

x3-ex-5.5=0

[2,6;3]

0,0001

ітерацій

6

х3-x+1=0

[-2;-1]

0,001

Ньютона

7

tg3(x)-tg(x)-1=0

[0,8;1]

0,001

ітерацій

8

ex-1/x-1=0

[0,5;1]

0,0001

Ньютона

9

2x3-7x2+3x-10=0

[3;4]

0,001

ітерацій

10

x+ln(x)-2=0

[2;1]

0,0001

Ньютона

Продовження таблиці 9.1

1

2

3

4

5

11

x3+3x+1=0

[0;-1]

0,0001

ітерацій

12

2x3-5x2+5x-12=0

[2;3]

0,001

Ньютона

13

xln(x)-2=0

[2;3]

0,001

ітерацій

14

5x3-6x2+x-2=0

[1;2]

0,001

Ньютона

15

x3--8.5=0

[2;3]

0,0001

ітерацій

16

ex-ln(x)-20=0

[3;3,2]

0,0001

Ньютона

17

3x3-4x2+2x-3=0

[1;2]

0,0001

ітерацій

18

x3+2x-11=0

[1;2]

0,001

Ньютона

19

ex-2-ln(x+2)=0

[2;3]

0,001

ітерацій

20

4x3-5x2+2x-3=0

[1;2]

0,001

Ньютона

21

x3-2x-5=0

[2;3]

0,0001

ітерацій

22

5x2+7x-15=0

[0;0,2]

0,0001

Ньютона

23

ex-1/x-1=0

[2;3]

0,001

ітерацій

24

2ex-2-lg(x+12)=0

[0,5;1]

0,0001

Ньютона