Таблицы и массивы
Темы параграфа:
Понятие одномерного массива
В жизни мы постоянно сталкиваемся с множеством объектов, объединенных по определенным признакам:
Например: семейство лилейные ;
семейство луковые
Класс однодольные;
Класс двудольные
Понятие одномерного массива
Данные объекты: температура за год оформлены в таблицу
месяц
1
Темпер-ра
2
-21
3
-18
4
-7,5
5
5,6
10
6
7
18
22,2
8
9
24
10
17
11
5,4
-7
12
-18
- таблица называется линейной.
T [ 1: 12 ]
T [1]
T [2]
T [3]
T [4]
T [5]
T [6]
T [7]
T [ 8 ]
T [ 9 ]
T [ 10 ]
T [ 11 ]
T [ 12 ]
Темпер-ра
-21
-18
-7,5
5,6
10
18
22,2
24
17
5,4
-7
-18
В языках программирования линейная таблица называется одномерным массивом.
В нашем примере Т - это имя массива.
Элементы массива пронумерованы.
Порядковый номер элемента называется его индексом . Каждый элемент массива обозначается индексированным именем в следующей форме:
[]
Индекс записывается в квадратных скобках: Т[2], Т[10], Т[12]. Индексы могут представляться не только в виде констант, но и в виде целых переменных и даже выражений целого типа: T[i], T[k], T[i+k], T[2*k].
Важно следить, чтобы значения индексов не выходили за допустимые границы. В примере с температурами они должны лежать в диапазоне от 1 до 12.
Все элементы массива должны иметь одинаковый тип. Если массив состоит только из целых чисел, то тип массива - целый. В нашем примере значения температур могут быть дробными, поэтому тип массива - вещественный.
Массивы
Характеристики массива:
- Тип элементов массива
- Тип элементов массива
- Размер массива
- Размер массива
ИМЯ
[ индекс ]
A[I]
Понятие массива:
НОМЕР элемента массива
( ИНДЕКС )
массив
A
3
1
2
3
4
5
15
5
10
15
20
25
A[4]
A[5]
A[1]
A[3]
A[2]
ЗНАЧЕНИЕ элемента массива
НОМЕР (ИНДЕКС) элемента массива : 2
A[2] =10
ЗНАЧЕНИЕ элемента массива : 10
Массивы
Массив – это пронумерованная конечная последовательность однотипных величин.
Решение задач по обработке массива связано, как правило, с перебором элементов массива.
Такой перебор происходит в цикле, в котором изменяется значение индекса от начальной до конечной величины.
Для того чтобы организовать ввод исходных данных в массив, нужно также использовать цикл.
Описание и ввод значений в массив на Алгоритмическом языке
Запишем алгоритм ввода значений в массив температур.
Сначала посмотрим, как это делается на АЯ.
Рассмотрим два варианта алгоритмов на АЯ, использующих разные способы организации цикла.
алг Ввод массива, вариант 1 вещ таб Т[1:12] цел I нач I:=1 пока Iповторять нц вывод ("Т[," I , "]=") ввод (Т[I]) I:=I+1 кц кон
алг Ввод массива, вариант 2 вещ таб Т[1:12] цел I нач для I от 1 до 12 шаг 1 повторять нц вывод ("Т[",I,"]= ") ввод (Т[I]) кц кон
Обратите внимание на вторую строку алгоритмов. В ней присутствует описание массива температур. В Алгоритмическом языке массив называется таблицей. Запись вещ таб Т[1:12] описывает таблицу (массив) вещественного типа, имя которого Т и элементы пронумерованы от 1 до 12.
Цикл с параметром в АЯ
В первом варианте алгоритма используется уже знакомая вам алгоритмическая структура цикла с предусловием .
пока I нц вывод ("Т[," I , "]=") ввод (Т[I]) I:=I+1 кц Переменная I играет роль параметра цикла, изменяющегося от 1 до 12 с шагом 1. Внутри цикла она используется в качестве индекса в обозначении элементов цикла: Т[I].
Ввод организован в режиме диалога, что является
обязательным условием дружественности интерфейса
программы.
Перед вводом каждого очередного элемента таблицы на экран будет выводиться его имя. Это результат выполнения команды вывод "Т[", I , "]=".
После этого программист должен ввести с клавиатуры соответствующее число (команда ввод Т[I]):
Т[1]= -21
Т[2]= -18
Т[3]= -7.5 и т. д.
Во втором варианте используется алгоритмическая структура, которая называется "цикл с параметром" .
для I от 1 до 12 шаг 1 повторять нц вывод ("Т[",I,"]= ") ввод (Т[I]) кц
Ее общая форма такая:
для от до шаг повторять нц кц
Параметром цикла должна быть переменная целого типа. В нашем примере это переменная I .
Выполнение тела цикла повторяется для всех последовательных значений параметра от начального до конечного значения включительно с изменением его значения при каждом повторении на величину шага.
Следовательно, по второму варианту алгоритма будут выполняться те же самые действия, что и по первому.
Расчет среднего значения элементов массива стр 108 – сам-но:
- Выполнение задания с пом. ЭТ
- Разбор алгоритма на алгоритмическом языке и оформление алгоритма в тетради на АЯ и в виде блок-схем
\
Дом задание:
Program rr;
var
T: array [1..10] of integer;
C: array [1..10] of real;
i: integer; a: real;
begin
a := 0;
for i := 1 to 10 do
begin
readln(T[i], c[i]);
a := T[i] * c[i] + a;
end;
writeln;
writeln(a);
end.