Программирование алгоритмов с использованием одномерных массивов данных
План лекции:
1. Массив данных. Объявление массива.
2. Программирование алгоритмов с использованием одномерных массивов данных.
Если переменная в каждый момент времени способна принимать лишь одно фиксированное значение, то ее называют простой (скалярной). Переменные, состоящие из нескольких объединенных по какому-то признаку простых компонентов одного типа и имеющие общее имя, называют сложными (структурированными). Примером структурированной переменной является массив.
Массив (индексированные переменные)– подмножество однотипных переменных, объединенных по какому-либо признаку и имеющих общее имя. Отдельные величины, составляющие массив, называются его элементами. Имена массивов образуются по тем же правилам, что и имена простых переменных. Доступ к конкретному элементу массива осуществляется с помощью индексов, которые указывают в квадратных скобках после имени. Например: Beta[5] – пятый элемент массива Beta; Delta[J] – элемент массива Deltaс порядковым номером J. Значение индекса есть целочисленная переменная (константа, выражение) или отдельные символы (тип CHAR). Присутствующие в программе элементы массивов объявляются в разделе описания переменных VAR, например:
VAR MAS1 : ARRAY[1..10] OF INTEGER;
MAS2 : ARRAY[1.. 8] OF REAL;.
При объявлении массива вначале указывают его имя (например, MAS1), а затем, после двоеточия и слова ARRAY, интервал изменения индексов в квадратных скобках (в частности, для MAS1 – от 1 до 10), ключевое слово OF и указатель типа элементов в массиве (в нашем примере INTEGER – целый).
Количество приводимых в квадратных скобках индексов, необходимых для установления месторасположения элементов массива, определяет его размерность. Для ввода и вывода элементов массива будем использовать оператор цикла FOR, в котором параметром цикла будет индекс (порядковый номер) элемента массива.
Пример 3 В заданном массиве А1, А2, ... , А30 найти и вывести на печать сумму и произведение всех элементов массива.
Рисунок 7 – Схема алгоритма примера 3 | PROGRAM PRIMER3; VAR S,P,I: INTEGER; A: ARRAY [1..30] OF INTEGER; BEGIN FOR I:=1 TO 30 DO READLN (A[I]); S:=0; P:=1; FOR I:=1 TO 30 DO BEGIN S:=S+A[I]; P:=P*A[I]; END; WRITELN (‘СУММА=’,S:6, ‘ПРОИЗВЕДЕНИЕ=’,P:10); END. |
Пример 4 В массиве из nэлементов (n задано): X1, X2, ... , Xn, не содержащем одинаковых элементов, найти максимальный элемент и его порядковый номер.
Рисунок 8 – Схема алгоритма решения примера 4 | PROGRAM PRIMER4; CONST N=20; VAR I,MAX,M: INTEGER; X: ARRAY [1..N] OF INTEGER; BEGIN FOR I:=1 TO N DO READLN (X[I]); MAX:=X[1]; M:=1; FOR I:=2 TO N DO IF X[I]>MAX THEN BEGIN MAX:=X[I]; M:=I; END; WRITELN(‘МАКСИМ.ЭЛЕМЕНТ=’, MAX:5,‘ЕГО НОМЕР - ’,M:2); END. |
Вопросы для самоконтроля
1. Что такое цикл, циклический вычислительный процесс?
2. Как классифицируются циклы?
3. Что такое параметр цикла?
4. Что такое массив данных?
5. Что такое индекс элемента массива и что он характеризует?
6. Какой цикл называется детерминированным?
7. В чем отличие операторов цикла WHILE и REPEAT?
Дата добавления: 2022-02-05; просмотров: 244;