Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
posibnik_paskal.pdf
Скачиваний:
230
Добавлен:
11.02.2016
Размер:
2.43 Mб
Скачать

«Turbo Pascal »

Значенко О.П.

ТЕМА 7. ОБРОБКА МАСИВІВ У ТУРБО ПАСКАЛІ

Одновимірні масиви

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

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

У математиці поняттю масив відповідають поняття вектора та матриці. Масив, що представляє собою список даних одного типу називається простим або одновимірним. Для доступу до даних масиву необхідно вказати ім’я масиву та порядковий номер елемента в масиву. Якщо дані масиву представлено у вигляді таблиці то даний тип масиву називається багатовимірним. Для доступу до даних, що зберігаються в даному масиві, необхідно вказати його ім’я та два індекси. Перший індекс повинен відповідати номеру рядка, а другий – номеру стовпця, в якому зберігається необхідний елемент.

Опис масивів

Для опису масивів використовують службові слова array, off .

Var <ім’я масиву> : array [<нижній індекс>..<верхній індекс>] of <тип>;

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

Приклад

Var

x, y : array [ 0..12 ] of real; z : array [ 1..6 ] of integer;

31

«Turbo Pascal »

Значенко О.П.

Для опису масиву можна використовувати попередньо визначені константи:

Const

 

n = 10;

 

m = 12;

 

Var

 

y : array [ 1.. n ]

of real;

z : array [ 1.. m ]

of integer;

При описі масиву константи мають бути визначені до використання, так як масив не може бути змінної довжини.

Розмір масиву не може перевищувати 64 Кб. Це обмеження відноситься і до інших структур даних.

Операції над масивами

Для роботи з масивом, як одним цілим необхідно використовувати його ідентифікатор не вказуючи індекс в квадратних дужках. Доступ до кожного елементу здійснюється за допомогою індексу, тобто порядкового номеру елемента масиву. Для звернення до елементу масиву необхідно вказати ім’я масиву та порядковий номер елемента: masiv[25], d[12], div[2]

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

Так якщо масиви L та K описано таким чином: Var L, K : array [ 1..20 ] of real; то можна записати оператор L:= K

Таким чином операція одразу всім елементам масиву L присвоїть значення елементів масиву K, які відповідають їм по номерам.

Введення та виведення елементів масиву

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

32

«Turbo Pascal »

Значенко О.П.

for i:=1 to n

do

begin

Write (‘a[‘, i ,’]=’); readln(a[i]);

end;

Для виведення елементів масиву використовується також цикл з параметром.

for i:=1 to k do Writeln(a[i]);

Приклад програми знаходження максимального елементу масиву

Program Massiv_max;

Const k = 10;

Var a: array [1..k] of real; i: integer; max: real;

Begin

Writeln (‘ Введі елемент масива’);

For i:=1 to k do

Begin

Write (‘a[‘, i ,’]=’); Readln(a[i]);

End;

max:= a[1];

For i:=2 to k do

If max<a[i] Then max:= a[i]; Writeln (‘max =’, max);

Readln;

End.

Для заповнення масиву будь якими довільними елементами використовується стандартна процедура Паскаля Randomize та функції Random(n), що генерують випадкові числа. Параметр n у функції Random(n) визначає праву межу інтервалу, в якому будуть визначатися випадкові числа (ліва межа завжди 0). Функція Random

33

«Turbo Pascal »

Значенко О.П.

може задаватися и без параметра. В цьому випадку вона буде генерувати дійсне число в діапазоні [0;1]. Для того, щоб послідовність числа не була постійною застосовують процедуру Randomize, яка встановить початок підрахунку випадкових чисел залежно від поточного стану системного годинника вашого комп’ютера.

Приклад.

Randomize; For i:=1 to n do

a[i]:= random(100);

Приклад програми знаходження суми елементів масиву

Program Massiv_summ;

Const n = 10;

Var a: array [1..n] of integer;

i, S: integer;

 

Begin

 

S:=0;

 

Randomize;

 

For i:=1 to n do

{введення елементів масиву}

Begin

 

a[i]:= random(100);

S:=S+ a[i];

 

End;

 

For i:=1 to n do

{виведення елементів масиву}

Writeln (a[i]);

 

Writeln (‘S=’, S);

 

End.

 

34

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