- Регистрация
- 1 Мар 2015
- Сообщения
- 1,467
- Баллы
- 155
Массивы удобно использовать там, где приходится обрабатывать большое количество однотипных данных. Возьмем гипотетический пример: нужно перевести данные от 1 до 100 американских миль в привычные нам километры. Поскольку мы точно знаем, что у нас будет 100 элементов, можно воспользоваться массивом, а для его обработки удобней всего использовать цикл for:
Что мы имеем в данном примере? При первом проходе цикла for счетчик i имеет значение 1, следовательно, в строке
a := i * 1,609;
мы обращаемся к первому (a[1]) элементу массива, и присваиваем ему значение i, умноженное на 1,609 километров. Следовательно, в элемент массива a[1], который соответствует одной миле, попадает значение 1,609 километров. При втором проходе цикла i уже равен 2, значит, в элемент a[2] уйдет значение 2 * 1,609, то есть 3,218. И так далее, до конца массива. В дальнейшем, обратившись к нужному элементу массива, мы сможем узнать, скольким километрам будет равно данное количество миль:
ShowMessage('23 мили = ' + FloatToStr(a[23]) + ' километра');
Из приведенного выше примера вы можете почерпнуть полезный прием программирования: в качестве индекса массива можно указывать не только целое число, но и счетчик цикла, или значение любой переменной целого типа. Однако при программировании цикла следует соблюдать осторожность: если указать индекс, который не входит в диапазон значений массива, произойдет ошибка. Так, если бы мы попытались выполнить код
то получили бы ошибку, так как уже при первом проходе мы обратились бы к элементу a[0], которого не существует.
Код:
var
i : Byte; //счетчик для for
a : Array [1..100] of Real; //массив для полученных данных
begin
for i := 1 to 100 do
a[i] := i * 1,609;
a := i * 1,609;
мы обращаемся к первому (a[1]) элементу массива, и присваиваем ему значение i, умноженное на 1,609 километров. Следовательно, в элемент массива a[1], который соответствует одной миле, попадает значение 1,609 километров. При втором проходе цикла i уже равен 2, значит, в элемент a[2] уйдет значение 2 * 1,609, то есть 3,218. И так далее, до конца массива. В дальнейшем, обратившись к нужному элементу массива, мы сможем узнать, скольким километрам будет равно данное количество миль:
ShowMessage('23 мили = ' + FloatToStr(a[23]) + ' километра');
Из приведенного выше примера вы можете почерпнуть полезный прием программирования: в качестве индекса массива можно указывать не только целое число, но и счетчик цикла, или значение любой переменной целого типа. Однако при программировании цикла следует соблюдать осторожность: если указать индекс, который не входит в диапазон значений массива, произойдет ошибка. Так, если бы мы попытались выполнить код
Код:
for i := 0 to 100 do
a[i] := i * 1,609;