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

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

  1. Що таке масив як структура даних?

  2. Які дані можуть бути використані у якості індексів та елементів одновимірного масиву?

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

  4. Яким чином працює алгоритм «лічильник» для елементів одновимірного масиву?

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

  6. Які показники використовуються для оцінки швидкодії різних методів сортування?

  7. У чому полягає принцип методу сортування «бульбашки»?

  8. У чому полягає принцип методу сортування відбором?

  9. У чому полягає принцип двійкового пошуку?

  10. У чому полягає принцип методу Хоара?

  11. У чому полягає принцип методу «шейкерного» сортування?

  12. У чому полягає різниця методу лінійного сортування і методу сортування «бульбашки»?

Практична робота №4

Багатовимірні масиви

Мета роботи: вивчити технологію роботи з багатовимірними масивами.

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

1 Опис багатовимірних масивів

const

n=23; {Кількість студентів}

tурe

Semestrj=array[l..n,1..5] of integer; {тип - двовимірний масив чисел з n рядків і 5 стовпців}

Rik=array[l..n,1..5,1..2] of integer; {тип - тривимірний масив чисел: n – кількість студентів, 5 - кількість предметів, 2 – кількість семестрів року}

var

Semestr_l:Semestrj {двовимірний масив чисел типу integer}

C_Rik:Rik;{тривимірний масив чисел типу integer}

Grupa:array[l..n,1..5,1..4] of integer;{менш кращий спосіб завдання масивів}

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

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

2 Доступ до елементів масивів

Способи доступу до елементів одновимірних і багатовимірних масивів повністю аналогічні. Так, наприклад, для того, щоб студентові під номером 2 по третьому предмету поставити оцінку 2, необхідно виконати наступну операцію присвоєння:

Semestr_l[2,3]:=2;

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

У загальному випадку

Semestr_l[i,j]:=3;

такий запис означає операцію присвоєння конкретного значення 3 елементу, розташованому на перетині рядка з номером i і стовпця з індексом j.

До елементів масиву можливий ще й такий варіант доступу:

Chetv_l[i][j]:=3.

3 Масиви ідентичного типу

tурe

Massjv=array[1..26,1..5] of integer;

var

Mas_1,Mas_2:Massiv;

Mas_3:Massiv;

Mas_4,Mas_5:array[1..26,1..5] of integer;

Mas_6:array[1..26,1..5] of integer;

Змінні Mas_l, Mas_2, Mas_3 мають так званий ідентичний тип. Масиви Mas_4 і Mas_5 також є змінними ідентичного типу. Однак тип змінних Mas_l, Mas_2, Mas_3 не ідентичний типу змінних Mas_4 і Mas_5, а також типу змінної Mas_6. Більше того, тип масиву Mas_6 не ідентичний жодному з типів зазначених змінних.

Для масивів ідентичного типу можна застосувати наступний оператор присвоєння: Mas_l:=Mas_2;

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

Mas_1:= Mas_2; Mas_3:= Mas_1; Mas_4:= Mas_5;

Неприпустимі операції присвоєння:

Mas_1:= Mas_4; Mas_3:= Mas_5; Mas_4:= Mas_6;

Компілятор буде вважати, що у всіх трьох випадках змінні по різні сторони операторів присвоєння, належать різним типам. Разом із цим структура всіх розглянутих масивів зовсім однакова.

Якщо тип масиву задавати не в розділі визначення змінних, а в розділі опису типів, то повторне використання оголошеного типу в розділі оголошення змінних не приведе до яких-небудь непорозумінь: всі масиви цього типу для компілятора будуть ідентичними.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]