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

Завдання до лабораторної роботи

Складіть програми для розв’язання наступних задач.

Варіант 0n та 3n. Сформуйте файл із модулів цілих чисел. Знайдіть <умова А> (табл. 19).

Варіант 1n. Сформуйте файл із квадратних коренів цілих чисел. Знайдіть <умова Б> (табл. 20).

Варіант 2n. Сформуйте файл із чисел послідовності (-1)k2k/k, де k=. Знайдіть <умова Б> (табл. 20).

Таблиця 19

n

Умова А

1

Кількість парних чисел серед компонентів файла

2

Кількість непарних чисел серед компонентів файла

3

Кількість квадратів непарних чисел

4

Кількість квадратів парних чисел

5

Середнє арифметичне значень компонентів з парними номерами

6

Середнє геометричне значень компонентів з непарними номерами

7

Найбільше зі значень компонентів з парними номерами

8

Найменше зі значень компонентів з непарними номерами

9

Суму квадратів компонентів файла

0

Добуток квадратів компонентів файла

Таблиця 20

N

Умова Б

1

Суму компонентів файла

2

Добуток компонентів файла

3

Суму квадратів компонентів файла

4

Модуль суми компонентів файла

5

Квадрат добутку компонентів файла

6

Найбільший з компонентів файла

7

Найменше зі значень компонентів з парними номерами

8

Найбільше зі значень компонентів з непарними номерами

9

Суму найбільшого і найменшого зі значень компонентів файла

0

Середнє арифметичне модулів компонентів файла

Лабораторна робота 13 робота з множинними типами даних

Мета роботи: виробити практичні навички в завданні змінних множинного типу і виконанні найпростіших операцій над ними; ознайомитися з задачами, у яких необхідно використовувати змінні множинного типу.

Множинний тип даних

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

Загальний вид опису множини - TYPE T=SET OF TK;

Тут Т - ідентифікатор типу; ТК - тип множини (кожної, крім типу SET). Кожну змінну-множину треба описати в розділі VAR. Множина може бути описана і безпосередньо при описі змінної.

Операції над множинами:

1 Об'єднання -

['B','F'] + ['B'...'D'] = ['B','C','D','F'].

2 Перетинання (приналежність двом множинам) -

[0..4] * [5,6] = [];

[4,5] * [5,6] = [5].

3 Вирахування (елементи першої множини, що не є елементами другої множини) -

[1,5,9] - [2,4,8,9] = [1,5].

4 Приналежність множині -

5 IN [3..7] TRUE.

5 Тотожність -

[весна] = [] FALSE.

6 Нетотожність -

[осінь,зима] <> [осінь,весна] TRUE.

7 Міститься в (<=) -

[зима] <= [весна,осінь,зима] TRUE.

8 Містить (>=) -

[літо,осінь] >= [весна] FALSE.

При визначенні множини необхідно враховувати наступні обмеження:

- базисний тип – будь-який скалярний (тип real не є скалярним);

- максимальна кількість елементів 256;

- значення елементів з базисного типу повинне належати множині 0..255.

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

Приклад:

USES CRT;

TYPE

LET = SET OF ‘A’..#255;

VAR

CH : CHAR;

YES : LET;

NO : LET;

YESNO: LET;

BEGIN

YES := [‘Y’,’Y’,’Д’,’Д’];

NO := [‘N’,’N’,’Н’,’Н’];

YESNO := YES+NO; {об'єднання множин};

Write (‘Продовжити? (Т/Н)’);

REPEAT

CH:=READKEY;

UNTIL CH IN YESNO;

{перевірка на приналежність Ch множині припустимих значень відповідей користувача}

IF CH IN NO THEN HALT;

WRITELN(CH);

END.