Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по информатике.doc
Скачиваний:
18
Добавлен:
02.02.2015
Размер:
730.62 Кб
Скачать

Write(*,*) ‘Уведіть a b c’

READ(*,*) A, B, C

Через те що при виявленні оператора READ програма зупиняється і чекає введення трьох змінних, бажано вивести попередньо на екран символьну змінну, що повторює список уведення, що і виконується оператором WRITE.

VI. Програма мовою FORTRAN завжди закінчується оператором END.

Приклад. Обчислити , якщо;.

PROGRAM EXAMPLE

С Блок опису перемінних

REAL T, B, Y, P, X, PI

С Уведення даних

WRITE(*,*) 'Уведіть X, PI, Р'

READ(*,*) X, PI, P

С Обчислювальний блок

Y=SQRT(4*X)*EXP(-X)

B=(EXP(X)*COS(X)+EXP(X)*SIN(X))/TAN(X/PI)

T=B*EXP(-Y/(2*P*X)

С Вивід результатів

WRITE(*,*)'Проміжні результати'

WRITE(*,*)'Y=', Y, 'B=', B

WRITE(*,*)'Підсумкове значення'

WRITE(*,*) ‘T=’, T

END

Звіт про роботу повинний включати короткий опис роботи, блок-схему програми, текст програми і результати її виконання.

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

АЛГОРИТМИ З РОЗГАЛУЖЕННЯМ. ЛОГІЧНІ ВИРАЖЕННЯ

Мета роботи

Метою даної лабораторної роботи є придбання навичок використання умовного логічного оператора, умовних блокових операторів двох типів і оператора безумовного переходу.

Завдання

1.Скласти блок-схему задачі по індивідуальному варіанту і написати програму. Варіанти завдань дані в Додатку 5. Номер варіанта призначається викладачем.

2. Зробити налагодження програми і її тестування.

3. Скласти звіт про роботу.

Вказівки до виконання завдання

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

I. Умовний логічний оператор. Загальна форма запису:

[n] IF(L) d

де n – мітка оператора; L – логічне вираження, що описує яку-небудь умову; d – одиничний оператор (крім умовного оператора й оператора циклу).

Принцип дії: спочатку обчислюється значення логічного вираження L. Якщо воно має значення «істина», то виконується оператор d; якщо значення логічного вираження  «неправда», то виконується наступний оператор програми.

Цей оператор найчастіше використовується для обходу при виконанні певної умови декількох операторів програми.

II. Умовний блоковий оператор першого типу. Загальна форма запису:

[n] IF(L) THEN

{if - блок }

ENDIF

Принцип дії даного оператора аналогічний попередньому з тією лише різницею, що {if – блок } може містити кілька операторів. Серед них можуть знаходитися й інші умовні оператори, а також оператори циклу.

III. Умовний блоковий оператор другого типу. Загальна форма запису:

[n] IF(L) THEN

{if - блок}

ELSE

{else - блок}

ENDIF

Принцип дії: якщо логічне вираження L має значення «істина», то виконуються оператори {if блоку}, оператори {else – блоку} не виконуються; якщо логічне вираження L має значення «неправда», то виконуються оператори {else  блоку}, оператори {if  блоку} обминають. Усякий з блоків може бути порожнім, це не буде синтаксичною помилкою. Серед операторів блоків можуть знаходитися інші логічні оператори або оператори циклу. При використанні вкладених керуючих операторів необхідно стежити за їхнім розміщенням у рамках зовнішнього оператора. Схематичне розміщення вкладених операторів дано на прикладі:

IF(L) THEN

IF(L1) THEN

--------------

ENDIF

ENDIF

Для організації безумовного переходу використовується оператор GOTO. Загальна форма запису:

GOTO n,

де n – мітка оператора, куди передається управління програми. Мітка – це число, що має максимально п'ять знаків і відмінне від нуля. Мітка ставиться в перших п'ятьох позиціях у тексті програми. У програмі мітки повинні бути унікальні.

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

.GE. – більше або дорівнює;

.GT. – більше чим;

.LE. – менше або дорівнює;

.LT. – менше ніж;

.EQ. – дорівнює;

.NE. – не дорівнює.

Прикладом їхнього застосування може служити наступний запис: (L.GT.K).

Логічні операції також використовують операнди логічного типу. До логічних операцій належать:

.NOT. – операція заперечення;

.AND. – операція логічного множення;

.OR. – операція логічного додавання.

Результатом операції .NOT. є «істина», якщо операнд має значення «неправда», і навпаки. Результатом операції .AND. буде «істина», якщо обидва операнда мають значення «істина», і «неправда» у всіх інших випадках. Результатом операції .OR. буде «неправда», якщо обидва операнда мають значення «неправда», у всіх інших випадках результатом операції буде «істина».

У змішаному виразі при відсутності скобок операції мають наступний пріоритет (у порядку убування):

  • арифметичні вирази;

  • операції відносини;

  • логічні операції;

а) заперечення;

б) логічне множення;

в) логічне додавання.

Приклад: Визначити, чи попадає точка з декартовими координатами x, y в область, обмежену кривими: окружністю  x2+(y1)2=4 і параболою y=2-x2.

Рисунок 4

Для правильного визначення умов, що будуть використані в програмі, зобразимо область, обмежену даними кривими (рис. 4). Точка належить області, якщо задовольняються спільно дві умови, отримані з використанням рівнянь кривих:

;

.

Текст програми:

PROGRAM EXAMPLE

REAL X, Y

INTEGER K

CHARACTER YES, NO

YES=Точка попадає в область '

NO='Точка не попадає в область '