Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
10
Добавлен:
05.06.2015
Размер:
214.53 Кб
Скачать

Рибакова Л.В. МОДУЛЬ №1 Лабораторна робота №4

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

Тема: Програмування розгалужених розрахунків

Мета роботи: Навчитися створювати алгоритм та програму розрахунку функції за певної умови, використовуючи для цього умовний оператор if...then...else.

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

Повна форма умовного оператора має вигляд

IF <логiчний вираз> THEN <оператор1> ELSE <оператор2>;

IF <логічний вираз> THEN <оператор1>;

Тут:

IF, THEN, ELSE - службовi слова, синоніми слів "якщо", "тоді", "інакше";

<оператор1>,< оператор2> - оператори дій.

Якщо значенням логічного виразу є - TRUE, виконується оператор за словом THEN, якщо FALSE - то за словом ELSE, або не виконується ніякої дії (у другому варіанті виразу умовного оператора).

У складних випадках бажано користуватись позначеннями логічних зв'язків у формі AND ("i"), OR ("або"), NOT ("не"), або вкладеною формою записів –

IF..THEN

IF..THEN

IF..THEN ..;

Приклади програмування:

Якщо a>b і а<1, то виконати присвоєння y1=7;y2=a;y3=a+b;

iнакше, якщо a<=b або b>1, тодi виконати t1=2a;t2=a-b.

Умовний оператор мажна для цього випадка застосувати у такому варіанті:

IF (a>b) and (a<1) THEN

BEGIN y1:=7;

y2:=a;

y3:=a+b; END

ELSE IF (a<=b) OR (b>1) THEN

BEGIN t1:=2*a;

t2:=a-b; END;

………………………………….

ЗАВДАННЯ:

Задано вирази для розрахунку значень x,y,z. У залежності від співвідношень між ними мають бути розраховані значення інших змінних - v1 та v2. Скласти програму для розрахунку значень x,y,z та v1 і v2 при умовах, заданих у таблиці 2, передбачивши виконання наступних дій:

1. Увести вхідні дані оператором введення;

2. Виконати розрахунки з використанням оператора умови;

3. Користуючись оператором виведення та коментуванням вивести окремо вхідні дані та результати розрахунків

Варіант

Математична форма запису функцій

Вхідні дані

Умови розрахунку v1 та v2

1

2

3

4

1

x=a+b; y=b/arctgx; z=x-bay

a=0,1; b=0,2

x<y v1=yx2

x>=y v2=5z3

2

x=bc; y=c+x;

b=1,1

c=1,2

x<z v1=y2x

x>=y v2=5z3

3

x=c-d; y=dcos3x ; z=yc+1+x/y

c=0,2

d=0,1

y<z v1=x+y

y>=z v2=y2z

4

x=d/k; y=d+kx ;xyk-d

d=0,2

k=1,1

x>y v1=x2 +y

x<=y v2=z2y

5

x=ak ; y=a-sinx;

a=1,4

k=0,3

y<x v1=y2-x

y>=x v2=zy2

6

x=k+l; y=klgx;

k=0,3

l=0,2

z<x v1=x-y2

z>=x v2=5z2+x

7

x=al; y=l-arctgx;

a=0,3

l=1,1

x>y v1=x2 +y

x<=y v2=z2-y

8

x=a-b; y=a/lnx; z=b+xa-y

a=1,1

b=0,3

x>z v1=5x +y2

x<=z v2=2z2+y

9

x=b/c; y=bx; z=b+xc-y

b=1,1

c=1,2

y>z v1=y -x2

y<=z v2=3y+z2

10

x=dc; y=d/cosx; z=x-d+xy

d=0,2

c=0,4

z>x v1=5x +y

z<=x v2=2z2-x

1

2

3

4

11

x=k+s; y=k-sx;

k=0,3

s=0,4

x>y v1=2x2 +y

x<=y v2=4z2-y

12

x=kl; y=l/sinx ; z=lk-x+y

k=0,4

l=0,6

x>=z v1=x2 +y

x<z v2=z+5y2

13

x=a/b; y=b-lnx; z=xy+ba

a=1,2

b=0,3

z>=x v1=x-y

z<x v2=z2+x

14

x=kd; y=k+cosx2;

k=0,1

d=1,3

y<x v1=6-xy2

y>=x v2=z2x

15

x=cd2; ;

c=0,1

d=0,2

y<z v1=3x2-y

y>=z v2=5z2+x

Для самостійної роботи

Скласти схему алгоритму і програму для обчислювання А= (x,y,z) та B=(x,y,z) при умовах, заданих в таблиці. Якщо жодна з умов не виконуються, вивести про це інформацію на екран у довільній формі.

Задачу вирішити для двох значень х, заданих відповідно верхньою та нижньою строками у стовпці значень х.

Варіант

Вид функцій

При умовах

Вихідні дані

х

у

z

1

2

3

4

5

6

1

A=2-x

B=

x y

x<z

0,981

-0,32

-2,625

0,512

2

A=

B=x1/sinz

x y

x<z

1,625

6,31

5,4

0,252

3

A=xy+1+ey-I

B= +tgz

x z

x<y

0,451

2,444

0,869

-0,16

6

A=

B=tg2z+1

x y

x>z

-4,5

1,62

0,75

0,845

7

A=1+lg2(x+y)

B=(arctg )3

x z

x<y

0,025

3,741

-0,82

0,16

8

A=y+2sin2x

B=1+

z x y

x<y

0,412

0,011

0,275

0,486

1

2

3

4

5

6

9

A=lg (y|x|)

B=sin2(z+y)

x

x>z

-15,246

3,52

4,642

2,401

10

A= +xy

0B=arcsinz

y>x z

x<z

0,55

0,08

2,75

0,15

11

1A=5arctgz

B=

y<x

x>y

0,465

5,15

6,33

3,25

12

A=e|x-y|

B=lg+tgx

y>x>z

x y

15,331

-2,23

-0,823

15,221

13

A=

B=ez-1+sinx

y>x z

x<y

7,8

0,65

-5,5

2,3

14

A=

B=

y>x z

x<z

3,75

0,22

-6,72

1,05

15

A=

B=sin (arctgz)

y>x z

x<z

2,65

0,032

0,255

0,88

16

A=

B=

x z

y<x<z

3,75

0,22

-6,72

1,05

17

A=5e|x-4y|

B=lnx3+ctgx

y<x<z

x z

0,331

-2,23

-0,823

1,221

18

A=y+2cos2x

B=1+

y x z

x<z

0,412

0,011

0,275

0,486

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

  1. Які оператори мови Turbo Pascal називаються структурними?

  2. Що таке складений оператор мови Turbo Pascal і які функції він виконує?

  3. Як працює умовний оператор IF?

  4. Чи може символ ;” зустрічатись в структурному операторі і чому?

  5. Які особливості при написання вкладених операторів IF ?

  6. Задана кусочно-безперервна функція Y=F(X) . Обчислити значення функції в областях існування, в протилежному випадку вивести на друк повідомлення про відсутність рішення.

a)

у = x-1, x (- ; -5)

у = x2+2, x (5; + )

b)

у = x3-2x, x (-20; 0)

у = x - x2, x (20; 40)

c)

у = x/2+5, x [-15;1] (15; 30)

у = x2+1/x, x [5;10] (40; + )

7. Написати програму для обчислення значення y :

8. Напишіть програму знаходження коренів квадратного рівняння ax2+bx+c=0 за нижче поданим алгоритмом:

  • Введіть коефіцієнти рівняння: а, в, с , надавши їм довільних числових значень;

  • Перевірте коефіцієнт а :

  • Перевірте величину d :

Вимоги до оформлення лабораторних робіт

  1. Титульний лист :

  • - Міністерство освіти і науки КНТУ кафедра ОТ і ПМ;

  • № лаб. роботи, назва теми роботи ;

  • Мета роботи, завдання до роботи;

  • ПІПб виконавця та № варіанту;

  • дата виконання та дата оформлення звіту;

  • ПІПб викладача, що перевірив.

  1. 2-й лист

  • Формалізація змісту задачі

  • Блок-схема алгоритму;

  1. 3-й лист

  • Листинг програми (роздруківка, або від руки переписати з екрану ПК)

  1. 4-й лист

  • Протокол виконання програми та висновки.

  1. 5-й лист

  • Письмові відповіді на запитання по формі:

№ та зміст запитання

Коротка, але змістовна відповідь

Власний підпис

Приклад :
Знаходження найбільшого з двох чисел
  • уведення первісних даних (два числа)

  • перетворення первісних даних (виконання порівняння двох чисел) Якщо a>b, то обчислювальний процес піде по галузі max:=a і ніяк не піде по галузі max:=b.

  • виведення результуючих даних (найбільше число)

Програма має слідуючий вигляд:

PROGRAM LAB3;

USES CRT;

VAR A,B, MAX:REAL;

BEGIN

WRITELN ('ВВЕДIТЬ ЗНАЧЕННЯ A');

READ (A);

WRITELN ('ВВЕДIТЬ ЗНАЧЕННЯ B');

READ (B);

IF A>B THEN MAX:=A

ELSE MAX:=B

WRITELN ('Максимальне з', А:8:5), ’та’, В:8:5, ’є’, МАХ:8:5);

END.

8

Соседние файлы в папке Labtp_1s