Опис вхідних та вихідних величин
Опис вхідних та вихідних величин
Опис вхідних (вихідних) величин означає, що підлягають введенню (висновку) значення всіх величин, зазначених у списку введення (виведення).
Порядок, в якому будуть вводитися (виводитися) величини при цьому не задається - він визначається в процесі трансляції. Мінімальна одиниця інформації, яка вводиться (виводиться) як єдине ціле - скаляр або величина на області. Управління введенням (висновком) цих одиниць може здійснюватися за допомогою атрибутів.
Атрибути діють на величину (список величин), після якої вони вказані. Наприклад опис з програми Gauss.
INPUT a (FILE = 'gauss') ON kls, b (FILE = 'gauss') ON ks.
є запитом на введення з файлу gauss.dat значень велічіниa для всіх значень індексів області kls і значень величини b для всіх значень індексів області ks.
Атрибути дозволяють управляти формою вхідних і вихідних даних і пов'язувати дані з вхідними та вихідними файлами:
SPACE (n) задає n прогалин в рядку, починаючи з поточної позиції
'Рядок' задає висновок текстової константи
ORDER вказує порядок зміни індексів при виведенні: найстаршим індексом є самий правий, наймолодшим - самий лівий; для чергового значення кожного старшого індексу молодші приймають всі свої значення
LENGTH встановлює довжину запису в вихідному файлі
FILE задає ім'я вхідного або вихідного файлу; спосіб завдання імені файлу визначається при реалізації (при використанні версії транслятора на персональних ЕОМ вхідний файл за умовчанням має розширення .dat; при завданні імені файлу це розширення може бути опущено, якщо атрибут FILE не заданий, то введення здійснюється з файлу norma.dat. а висновок - на екран дисплея)
ALL призводить до висновку імені величини і її координат (значень індексів) для кожного значення величини на області.
Для вхідних величин дозволені тільки атрибути формат і FILE.
Приклад опису вихідних величин:
OUTPUT u (FILE = 'parabol.out') ON Wxt.
OUTPUT x (FILE = 'gauss.out', TAB (10), 'Рішення:', STR (1)) ON ks.
OUTPUT y (SPACE (10), 'параметр Y:', ALL, F15.2) ON ABC.
Для виведення даних в більш складній формі (таблиці, графіки тощо) слід використовувати або кошти стандартних бібліотек і пакетів, або власні програми, написані на інших мовах.
При завданні файлу вихідних даних програміст може:
розташовувати елементи введення в довільному порядку
управляти порядком розташування числових значень у файлі зміною порядку проходження індексів
не дотримуватися одного формату в запису числових значень
скорочено записувати дані, що повторюються.
Приклад вмісту файлу вихідних даних:
a (k = 1..4, l = 1..4) = 1.1161, 0.1254, 0.1397, 0.1490,
0.1582, 1.1675, 0.1768, 0.1871,
0.1968, 0.2071, 1.2168, 0.2271,
0.2368, 0.2471, 0.2568, 1.2671;
u1 (j = 1..20) = 20 (0.0);
epsilon = 1.0E-10;
b (k = 1..4) = 2 (1.1243), 2 (-2.1223);
Значення багатовимірних масивів даних розташовуються в файлі відповідно до зазначених індексами, причому першими змінюються значення більш правого індексу - в наведеному прикладі матриця a (k, l) задана по рядках, тобто k = 1, l = 1,2,3,4 . потім k = 2, l = 1,2,3,4, і так далі до k = 4, l = 1,2,3,4.
Для завдання кількох повторюваних значень у файлі вихідних даних використовують запис: кількість (значення), як це було зроблено в прикладі для визначення значень величини u1 двадцятьма нулями.
Спосіб завдання вхідного файлу, не є єдиним.