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

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

У програмі Turbo Pascal масиви спочатку потрібно описати в розділі type. Для цього використовують таку конструкцію:

type

ім’я = array [поч.інд...кін.інд] of тип;

var

змінна1, змінна2...: ім’я;

де ім’я – назва типу, що отримують масиви; тип – тип елементів масиву; поч.інд – номер першого елементу масиву (переважно приймають 1); кін.інд – номер останнього елементу масиву.

Приклад:

type

mas=array [1..7] of real; {масив з 7 дійсних чисел}

var

A,В : mas;

Допускається опис масивів у розділі var, наприклад,

var

A, B : array [1..7] of real;

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

for І:=M to N do

begin

write (‘A[‘, I, ‘]=’);

readln (A[ І ])

end;

де M, N – номери першого та останнього елементів масиву; І – лічильник, що відповідає номеру елемента масиву, що вводиться; А – назва масиву.

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

for І := M to N do

writeln(‘A[‘, І ,’]=’, A [ І ]);

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

Розглянемо деякі основні операції над масивами.

Для того, щоб знайти суму (різницю) двох масивів A та B, потрібно попарно додати (відняти) всі їх, елементи. Тому потрібно використати оператор циклу:

for I := M to N do C[ I ] := A[ I ] + B[ I ];

а для різниці

for I := M to N do C[ I ] := A[ I ] - B[ I ],

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

for I := M to N do C[ I ] := A[ I ] * B[ I ],

так само, щоб поділити два масиви, потрібно попарно поділити їх елементи.

При множенні (діленні) масиву на число перемножуються (діляться) усі елементи масиву на це число:

for I := M to N do C[ I ] := K * B[ I ],

Якщо потрібно знайти суму елементів в одному масиві, потрібно використати наступну конструкцію:

S := 0; {задаємо початкове значення суми}

for I := M to N do S := S+ A[ I ], {до суми додаємо наступний елемент}

Для знаходження добутку елементів використовують таку ж конструкцію, але початкове значення добутку встановлюють не 0 (нуль), а 1 (одиниця), і в циклі замість символу ”+” записують “*”.

Якщо потрібно знайти максимальний (мінімальний) елемент масиву, то спочатку присвоюють йому значення початкового елементу, а тоді всі наступні порівнюють з цим максимумом (мінімумом). У випадку, коли поточний елемент більший (менший) за максимум (мінімум), то йому присвоюють значення максимального. Отримуємо такий програмний блок:

max := A[1];

for I := 2 to N do

if max<A[ I ] then max := A[ I ];

Розглянемо приклад програми.

Приклад 1. Дано масив А з 15 елементів цілого типу. Порахувати середнє арифметичне додатних чисел.

Program example4;

type

mas = array [1..15] of integer;

var

A: mas;

S, N, І: byte;

Х: real;

begin

for І := 1 to 15 do

begin

write (`A[`, І ,`]=`);

readln (A[ І ])

end;

S:= 0; N := 0;

for I:= 1 to 15 do

if (A[ І ] mod 2)=0 {націло ділиться на два, тобто парне число}

then

begin

S:= S+A[ І ]; {знаходження суми парних чисел}

N:= N+1 { знаходження кількості парних чисел}

end;

X:= S/N; {середнє арифметичне – сума поділена на кількість}

writeln (`X=`, X:7:3);

readln

end.

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