- •Для студентів заочної форми навчання
- •1 Рекомендації щодо написання та оформлення контрольної роботи
- •2 Завдання до контрольної роботи
- •Завдання 1
- •Лінійний обчислювальний процес
- •Короткі теоретичні відомості
- •1 Структура програми
- •1.2 Типи даних
- •1.3 Стандартні процедури введення/виведення даних
- •Варіанти задач
- •Контрольні питання
- •Завдання 2 Розгалужений обчислювальний процес Короткі теоретичні відомості
- •2.1 Умовний оператор
- •Варіанти задач
- •Контрольні питання
- •Завдання 3 Циклічний обчислювальний процес Короткі теоретичні відомості
- •3.1 Цикли. Конструкції for - to, for - downto
- •3.2 Оператори циклу з передумовою while - do
- •3.3 Оператор циклу з подальшою умовою repeat - until
- •Варіанти задач
- •Контрольні питання
- •Завдання 4 Робота з одновимірними масивами чисел Короткі теоретичні відомості
- •Варіанти задач
- •5.1 Дії над масивами
- •5.2 Дії над елементами масиву
- •5.3 Типові ситуації, що виникають при роботі з двовимірними масивами
- •Варіанти задач
- •3Авдання 6 Організація програм, що містять підпрограми користувача Короткі теоретичні відомості
- •6.1 Підпрограми. Функції та процедури, визначувані користувачем
- •6.2 Підпрограми-функції
- •6.3 Локальні та глобальні змінні
- •6.4 Процедури
- •Варіанти задач
- •Контрольні питання
- •3 Критерії оцінювання знань студентів
- •Список літератури
- •Зразок оформлення титульної сторінки контрольної роботи
- •Контрольна робота
- •Кременчук 20__
5.1 Дії над масивами
Для роботи з масивом як єдиним цілим використовується його ім'я без вказівки індексу у квадратних дужках. Масив може брати участь тільки в операціях відношення: '=', '<>' і в операторі присвоєння ':='. Масиви, що беруть участь у цих діях, мають бути ідентичні за структурою, тобто мати однаковий тип індексів і однакові типи компонентів.
Наприклад, якщо масиви А і В описані як
VAR А, В: array [1..20] of real;
то застосування до них допустимих операцій дасть такий результат:
A=В − True, якщо значення кожного елементу масиву А дорівнює відповідному значенню елементу масиву В;
А<>В − True, якщо хоча б одне значення елемента масиву А не дорівнює відповідному значенню елементу масиву В;
А:=В − усі значення елементів масиву В присвоюються відповідним елементам масиву А [6].
5.2 Дії над елементами масиву
Після оголошення масиву кожен його елемент можна обробляти, вказавши ім'я масиву та індекси елементу [5].
Наприклад, запис Matr[4,4] робить доступним для обробки значення елемента четвертого стовпця масиву Matг, що знаходиться в четвертому рядку.
Індексовані елементи масиву називаються індексованими змінними і можуть бути використані так само, як і прості змінні.
5.3 Типові ситуації, що виникають при роботі з двовимірними масивами
Введення елементів масиву здійснюється, як правило, таким чином:
for i:=1 to 10 do
for j:=1 to 15 do readln(В[i, j]);
Можна ввести і значення окремих елементів, а не усього масиву. Так, за допомогою процедури readln(В[6,9]); вводиться значення елемента, розташованого в шостому рядку дев'ятого стовпця матриці В.
Виведення значень елементів масиву виконується аналогічним чином, але використовуються процедури write і writeln (див. приклад 5.1).
Приклад 5.1 Задано двовимірний масив різних дійсних чисел, що містить 5 рядків і 4 стовпці. Рядок, що містить максимальний елемент масиву, поміняти місцями з рядком, що містить мінімальний елемент, перетворений масив вивести на друк.
program Z51;
uses crt;
tуре massiv = array[l..4] of real;
var
m: array[1..5] of mass; {опис масиву m типу massiv}
ml: massiv; {опис масиву ml типу massiv}
max, min: real; {max, min елементи дійсного типу}
maxi, mini {i- номери max, min елементів}
i, j: integer;
begin clrscr;
writeln('Введіть початковий масив:');
for i:=1 to 5 do {Введення елементів масиву m }
for j:=1 to 4 do
begin
write('m[', i', ', ', j']=');
readln(m[i, j])
end;
writeln('Початковий масив :'); {Виведення початкового масиву}
for i:=l to 5 do
begin
for j:=1 to 4 do write(m[i, j]:5:2);
writeln;
end;
{Пошук максимального і мінімального значень та їх індексів}
max:=m[1,1]; min:=m[1,1] ;
maxi:=1; mini:=1;
for i:=1 to 5 do
for j:=1 to 4 do
begin
if max<m[i, j] then
begin max:=m[i, j]; maxi:=i end;
if min>m[i, j] then begin min:=m[i, j]; mini:=i end
end;
{Перестановка рядків з максимальним і мінімальним значеннями}
m1:=m[maxi];
m[maxi]:=m[mini];
m[mini]:=m1;
writeln('Macив після перестановки рядків:');
{Виведення перетвореного масиву}
for i:=1 to 5 do
begin
for j:=l to 4 do write(m[i, j]:5:2);
writeln;
end
readkey
end.
