![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лекция 9. Массивы и константы
Здесь вы познакомитесь с массивами и константами, а также научитесь пользоваться репозиторием Delphi, в котором хранятся шаблоны и мастера для многих форм различного вида и назначения. Применение нового материала на практике. Массивы Немного сложная, но, безусловно, необходимейшая тема в программировании. Массив – это формальное объединение нескольких однотипных переменных в одну. То есть, массив рассматривается как одна переменная, он имеет одно имя, но на самом деле там имеется несколько переменных одного типа. Массивы, как и переменные, объявляются в разделе переменных var, и имеют такой синтаксис: Имя_переменной: array [диапазон значений] of Тип_переменных_в_массиве; Пример: var a: Integer; //переменная целого типа b: array [1..10] of Integer; //массив целого типа begin Обратите внимание, что диапазон значений в массиве указывается произвольно, между первой и последней цифрой нет пробелов, но обязательны две точки. Пример диапазона может быть и таким: [5..7], какие цифры назначать – решать Вам. Обычно в практике приходится начинать диапазон с 1 или с 0, в зависимости от ситуации. Обращение к отдельному разделу массива такое: a:= 5; b[1]:= a; b[2]:= b[1]+2; То есть, сразу после имени массива ставятся квадратные скобки, внутри которых указывают индекс – номер элемента в массиве. Подобный массив можно воспринимать как таблицу с одной строкой и несколькими ячейками:
Рис. 9.1. Представление массива в виде таблицы Поскольку в приведенном примере объявлен массив целых чисел типа Integer, каждой ячейке (элементу) массива будет выделено по 4 байта памяти, каждый такой элемент соответствует обычной переменной такого же типа. Подобные массивы называются одномерными. С многомерными и динамическими массивами мы познакомимся позже. Как уже упоминалось, массивы могут быть любого типа: var a: array [0..3] of String; b: array [1..5] of Real; c: array [10..20] of Boolean; Обработка массива Массивы удобно использовать там, где приходится обрабатывать большое количество однотипных данных. Возьмем гипотетический пример: нужно перевести данные от 1 до 100 американских миль в привычные нам километры. Поскольку мы точно знаем, что у нас будет 100 элементов, можно воспользоваться массивом, а для его обработки удобней всего использовать цикл for:
var i: Byte; //счетчик для for a: Array [1..100] of Real; //массив для полученных данных begin for i:= 1 to 100 do a[i]:= i * 1,609; Что мы имеем в данном примере? При первом проходе цикла for счетчик i имеет значение 1, следовательно, в строке a[i]:= 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; то получили бы ошибку, так как уже при первом проходе мы обратились бы к элементу a[0], которого не существует. Константы Константы – это такие же, как переменные, ячейки оперативной памяти, значение которых нельзя изменить. То есть, вы однажды указали значение константы, и в дальнейшем обращаетесь к ней, как к обычной переменной, но присвоить ей другое значение уже не сможете. Константы удобно использовать, когда вы будете неоднократно обращаться к одному и тому же значению. Тип константы указывать не нужно, компилятор сам подбирает для нее подходящий тип. Константы описываются в разделе const, который всегда должен описываться перед разделом var: procedure MyProc; const pi = 3.14; MessageError = 'Текст сообщения об ошибке'; var a: Integer; b: String; begin ... end; Константы, особенно глобальные, удобно использовать там, где вы работаете с каким-то определенным значением. Если в дальнейшем это значение поменяется, нет необходимости скрупулезно менять код во всей программе, достаточно изменить значение константы. К примеру, вы производите расчет оклада, основываясь на сумме, соответствующей минимальной заработной плате. В таком случае не грех объявить константу MinZarPlat и присвоить ей текущее значение минимальной зарплаты.
В процессе расчета вам приходится умножать это значение на количество минимальных зарплат. Допустим, некто Сидоров имеет оклад, равный 5-ти минимальным зарплатам. В момент расчета вы умножаете 5 не на сумму минимальной зарплаты, а на константу MinZarPlat, которая и содержит нужное значение. А если через месяц или год сумма минимальной зарплаты изменится, то вам останется только заменить значение вашей константы на новое, не меняя при этом остального кода. Удобно, не правда ли?
|
||||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 250; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.12.120.178 (0.007 с.) |