Лабораторная работа №1 «Одномерные массивы»
Цели: формирование практических умений и навыков составления блок-схем и записи на языке программирования Паскаль алгоритмов заполнения, обработки одномерных массивов и последующей их реализацией на компьютере.
ТЕОРЕТИЧЕСКИЙ МАТЕРИАЛ
Массив – это совокупность конечного числа элементов одного и того же типа, в котором каждый элемент имеет номер, а все элементы общее имя. Номер элемента называется индексом.
Характеристики массива:
o тип - общий тип всех элементов массива;
o размерность (ранг) - количество индексов максима;
o диапазон изменения индекса (индексов) - определяет количество элементов в массиве.
Одномерный массив (вектор) - это пример массива, в котором элементы нумеруются одним индексом. В качестве номера (индекса) элемента массива используется выражение порядкового типа (чаще integer).
Описание массива
Способ 1. В разделе описания переменных:
var ИмяМассива: array [НижняяГраница..ВерхняяГраница] of ТипЭлементов;
|
|
Способ 2. В разделе описания типов:
type ИмяМассива: array [НижняяГраница..ВерхняяГраница] of ТипЭлементов;
Способ 3. В разделе описания констант
const ИмяМассива: array[1..10] of integer=(5, 78, -45, 14, -63, 100, -789, 10, 1, 0);
!!! Какие ошибки могут возникнуть при описании массивов:
o не определены размерность и границы диапазонов: a: array[] of real;
o значение нижней границы массива превышает значение верхней: b: array[10..1] of integer;
o границы массива необходимо задавать константой, а не выражением: c: array[1..a+b] of real;
o недопустимо использовать вещественные числа для границ индексов: d: array[1.0..100.0] of integer;
o
Заполнение массива данными (ввод элементов)
Массив, описанный как типизированная константа, уже содержит данные. Массивы, объявленные в разделе описания переменных, необходимо заполнить данными, прежде чем выполнять с ними какие-либо действия.
При вводе массива необходимо последовательно вводить 1-й, 2-й, 3-й и т.д. элементы массива, аналогичным образом поступить и при выводе. Следовательно, необходимо организовать цикл.
Значения элементов массива также можно задать следующими способами:
при вводе данных с клавиатуры:
write('Введите количество элементов в массиве');
readln(n);
for i:=1 to n do
begin
writeln('a[',i,']='); {Можно эту строчку в программе не использовать}
readln (a[i]);
end;
с помощью датчика случайных чисел:
randomize;
writeln('Введите количество элементов массива');
readln(n);
for i:=1 to n do
begin
a[i]:=random(50);
writeln('a(',i,')=',a[i]);
end;
Вывод массива
вывод в столбец:
for i:=1 to n do
writeln(a[i]);
в одну строку, через пробел-разделитель:
for i:=1 to n do
writeln(a[i],' ');
с заданием формата (например, где под каждый элемент отводится 4 позиции):
for i:=1 to n do
writeln(a[i]:4);