Урок 8. Понятие массива. Массивы, определение и описание линейного массива. Пример использования. Формирование и обработка одномерных массивов. Поиск в одномерном массиве элементов с заданными свойствами.
Типы данных
Массивы - это фиксированное количество упорядоченных однотипных переменных, обозначенных одним и тем же именем, например: A, T. Отдельные переменные в массиве называются элементами. Они располагаются в памяти ЭВМ в определенном порядке. Место каждого элемента массива определяется его номером (индексом), по которому можно обратиться к значению переменной: A[1], D[4], Ms[6], Tt[3]. Индексом массива может быть не только число, но и переменная, и числовое или буквенное выражение дискретного типа.
Примеры массивов: а) массив - список учеников вашего класса: индексом служит порядковый номер, элементы массива - фамилии учеников; б) оценки по информатике каждого ученика - массив, в котором индексом служат порядковые номера уроков, а элементы массива - оценки. Массивы характеризуются типом переменных, размерностью и размером. Тип элементов - арифметический или символьный. Размерность массива - число индексов, определяющих один элемент массива. Если индекс один, то массив - одномерный. Размер - это количество элементов в массиве. При работе с массивами нужно придерживаться следующей схемы: 1) объявление массива; 2) задание начальных значений элементам массива; 3) работа с элементами массива; 4) печать результатов.
Примеры пошаговой работы с массивом ОБЪЯВЛЕНИЕ. Каждый массив, используемый в программе, должен быть заранее объявлен. Пример: Const n=5; Var а: array [1..n] of real; - массив a из 5 дробных чисел. Const n=12; Var c: array [1..n] of char; - массив c из 12 символов.
Примеры пошаговой работы с массивом 2. ЗАДАНИЕ НАЧАЛЬНЫХ ЗНАЧЕНИЙ. Для присваивания значений элементам массива очень удобно использовать цикл. Пусть объявлен массив В, состоящий из 5 элементов типа integer. Тогда значения могут быть заданы 2 способами: а) с клавиатуры: For K:=1 to 5 do begin Write ('Введи число '); Readln (B[k]) end; б) с помощью генератора случайных чисел: For K:=1 to 5 do begin B[k] := Random (x1 - x0) + x0; Write ('B[', k, ']=', B[k]) end;
Примеры пошаговой работы с массивом 3. РАБОТА С ЭЛЕМЕНТАМИ МАССИВА. В основной части программы решается поставленная задача. Все элементы массива перебираются в цикле, где происходит их сравнение, или изменение, или поиск большего ( меньшего ) элемента, или вычисление суммы, или другие заданные операции. 4. ПЕЧАТЬ ПОЛУЧЕННЫХ РЕЗУЛЬТАТОВ - заключительная часть программы. Если требовалось изменить элементы массива, то нужно напечатать их новые значения. Элементы одномерного массива можно распечатать в строчку или в столбик. Это делается в цикле.
Примеры пошаговой работы с массивом Рассмотрим вывод значений на примере массива В из 5 элементов: а) в столбик - б) в строчку – For K:=1 to 5 do For K:=1 to 5 do Writeln ('B[', k, ']=', B[k]); Write (B[k]:6);
На 3-ем этапе возможно решение различных задач. Рассмотрим простейшие из них. . Изменение элементов массива. Общий вид: For k := 1 to n do a[k] := ; Пример: увеличить вдвое каждый элемент массива. For k := 1 to n do a[k] := a[k] :* 2;
Решение простейших задач с массивами. . Вычисление суммы элементов. Общий вид: Summa := 0; For k := 1 to n do Summa := Summa + a[k]; 3. Вычисление произведения элементов. Общий вид: Proizv := 1; For k := 1 to n do Proizv := Proizv * a[k];
Решение простейших задач с массивами. Нахождение количества элементов по условию. Общий вид: Kol := 0; For k := 1 to n do If then Kol :=Kol + 1; Пример: найти количество чётных элементов массива. Kol := 0; For k := 1 to n do If a[k] mod 2 := 0 then Kol :=Kol + 1;
Самостоятельно. Задать случайным образом 10 элементов массива: целые числа из интервала от -5 до 50. Найти: 1) сумму нечётных элементов; 2) произведение элементов, стоящих на чётных местах; 3) количество отрицательных элементов. Д/З Ввести с клавиатуры 12 элементов числового массива. Все положительные увеличить на 100, все отрицательные обнулить.