Delphi-Help

  • Increase font size
  • Default font size
  • Decrease font size
Главная Азы Урок 15. Подводим промежуточный итог

Урок 15. Подводим промежуточный итог

Оцените материал
(15 голосов)

Подводим промежуточный итог

Прежде чем продолжить изучение языка Pascal, следует подвести итог и вспомнить всё, что было сказано ранее. Всё, что сказано ниже, является кратким сборником всех предыдущих уроков.

Переменные

Переменная - это ячейка памяти, которой присвоено некоторое имя и это имя используется для доступа к данным, расположенным в данной ячейке. Для каждой переменной задаётся тип данных - диапазон всех возможных значений для данной переменной. Примеры типов данных - Integer (целое число), Real (вещественное число), Boolean (логическое значение), String (строка, последовательность символов), Char (один символ) и др. Значения переменным присваиваются непосредственно в процессе выполнения программы. Делается это с помощью знака присвоения - ":=" ("переменная := значение"). Каждая переменная перед использованием должна быть описана в разделе описания с помощью ключевого слова VAR ("VAR переменная : тип данных"). Частным случаем переменных являются константы. Константы - это переменные, значения которых не меняются в процессе выполнения программы. Константы описываются словом CONST ("CONST имя константы = значение"). Тип данных при описании констант простых типов данных можно опускать (например, запись "CONST g: Real = 9.8" эквивалентна записи "CONST g = 9.8"). Одной из встроенных констант является число "пи" - PI.

Базовые конструкции

Раздел описаний - это то место в программе, где описываются все используемые переменные, константы (а также метки, подпрограммы, типы данных и пр.).
Раздел реализации - место, где записываются все инструкции, которые будут выполнены при работе программы.

Раздел реализации заключается в блок BEGIN .. END:

  {раздел описаний} 
 
begin 
 
  {раздел реализации} 
 
end.

Блок BEGIN .. END служит для группировки нескольких команд. Особенно хорошо это будет проиллюстрировано при записи условного оператора (см. далее).

Условный оператор

Условный оператор служит для создания ветвлений в программе, т.е. когда в зависимости от какого-либо условия выполняется та или иная последовательность команд. Условный оператор записывается с помощью ключевых слов IF .. THEN, между которыми указывается некоторое условие, логическое выражение, которое может быть либо истиной (True), либо ложью (False). Команды, следующие за условным оператором, выполняются только в том случае, когда логическое выражение является истиной.

if {условие} then 
  {последовательность команд}

В случае, если требуется выполнить несколько команд в зависимости от выполнения условия, следует заключить эти команды в BEGIN .. END:

if {условие} then 
begin 
  Команда 1; 
  Команда 2; 
  Команда 3 
end;

В приведённом примере команды будут выполнены только в том случае, если условие истинно. Условный оператор позволяет указать команды и для того случая, когда условие не выполнилось:

if {условие} then 
  {команды, если условие выполняется} 
else 
  {команды, если условие не выполняется}

Обратите внимание, что перед ключевым словом ELSE разделитель команд ";" не ставится.

Не всегда использование конструкции IF .. THEN .. ELSE удобно. Иногда требуется выполнить различные команды в зависимости от значения переменной, причём значений может быть много. В этом случае можно применить оператор выбора, именуемый CASE. Оператору выбора сообщается переменная-селектор (тип данных должен быть обязательно перечислимый - число, символ и т.п.), а затем перечисляются значения, которые может принимать переменная и для каждого из них указывается соответствующий набор команд. В случае, если значение переменной не совпало ни с одной из указанных, выполняется набор команд, указанных после слова ELSE (хотя этот блок не является обязательным).

case {переменная-селектор} of 
  {константа_1}: {инструкции 1} 
  {константа_2}: {инструкции 2} 
  {...} 
  else {инструкции, если ни одна константа не подошла} 
end;

Логические выражения

Логические выражения - выражения, которые могут быть либо истинными, либо ложными. Соответствующий тип данных (логический) - Boolean (значения True и False). Логические выражения, к примеру, указываются при записи условного оператора IF. Над логическими выражения можно проводить некоторые операции:

· NOT ("не", отрицание) - изменяет значение выражения на противоположное;

· AND ("и", умножение) - результирующее выражение истинно только тогда, когда истинны все составляющие его выражения;

· OR ("или", сложение) - общее выражение будет истинным когда хотя бы одно из выражений, соединённых с помощью OR, истинно.

При записи сложных логических выражений простые условия следует заключать в скобки, так как они имеют более низкий приоритет.

Функции

Функции - заранее определённые наборы команд, направленные на получение какого-либо значения. Функция может иметь входные параметры - аргументы, которые используются при вычислении результирующего выражения. Входных параметров у функции может и не быть. Функцию можно вызывать по её имени. Значение, возвращённое функцией, можно присвоить какой-либо переменной, тип данных которой совпадает с типом данных результата функции, либо использовать в каком-либо выражении или даже в качестве входного параметра другой функции. В Delphi встроено огромное количество функций. Дополнительные функции для математических расчётов содержатся в модуле Math. Чтобы подключить этот модуль, нужно добавить в раздел uses его имя.

Случайные числа

Случайные числа полезно применять при моделировании каких-либо процессов, которые могут протекать при различных условиях. Также случайные числа часто применяются в играх для создания случайного варианта игры (например, расклад карточного пасьянса).
Случайные числа генерируются функцией Random. Если функция вызвана без параметров, случайное число будет взято из диапазона от 0 до 1, а если передать функции какое-либо число, то число будут выбрано из интервала от 0 до N (N - переданный параметр). Само число N при этом в "розыгрыше" не участвует. Для того, чтобы получить случайное из число из какого-нибудь другого интервала (например, от -5 до 5), следует просто из результата вычесть смещение относительно нуля. Например, Random(11)-5 будет генерировать числа от -5 до 5.

Чтобы числа были действительно случайными (а не псевдослучайными - при каждом запуске программы числа будут одинаковые), следует перед первым вызовом функции Random() вызывать процедуру Randomize. Она не имеет никаких параметров, её назначение - инициализация генератора действительно случайных чисел.

Ввод и вывод

Чтобы связать программную часть приложения и его визуальную составляющую, необходим механизм взаимодействия визуальных объектов внутренней структуры программы. Для того, чтобы получить какие-либо данные от визуальных элементов (например, полей ввода), необходимо обратиться к соответствующим свойствам этих компонентов. При этом необходимо следить за тем, чтобы типы переносимых данных совпадали.

Для конвертирования чисел в текстовые строки и обратно используются следующие функции:

· StrToInt() - преобразует указанную строку в целое число;

· StrToFloat() - преобразует указанную строку в вещественное число;

· IntToStr() - преобразует целое число в строку;

· FloatToStr() - преобразует вещественное число в строку.

Например, если требуется получить значение, введённое в текстовое поле Edit1 и записать его в переменную A типа Integer, следует написать так:

A:=StrToInt(Edit1.Text);

Для ввода чисел можно использовать текстовое поле TEdit (страница Standard), бегунок TTrackBar (страница Win32), поле с кнопками-стрелками TSpinEdit (Samples) и др. Для ввода текстовых строк небольшой длины обычно используется TEdit, для ввода больших текстов - TMemo (Standard) или TRichEdit (Win32). Также удобен ввод с помощью диалогового окна, создаваемого функцией InputBox().

Для вывода данных можно использовать любые из компонент - например текстовую метку TLabel или то же текстовое поле TEdit. Очень часто удобно выводить данные в виде диалоговых окон - с помощью функций ShowMessage() и MessageDlg().

Заключение

В данном уроке были кратко изложены темы, затронутые в предыдущих уроках - объявление переменных и присвоение им значений, использование констант, базовые конструкции языка Pascal, условный оператор и оператор выбора, формирование логических выражений, использование готовых функций, применение генератора случайных чисел и способы ввода и вывода данных. Всё это является базой для дальнейшего изучения языка Pascal и объектно-ориентированной среды Delphi.

Авторизация



Счетчики