В прошлой статье мы подготовили среду разработки, познакомились с некоторыми терминами и написали первую программу. Теперь пришло время более подробно узнать про хранение информации в программах, типы данных и переменные.
1. Задачи хранения информации
Необходимость хранения информации определяется требованиями при разработке. Можно привести 3 примера вероятных задач:
Приложение для расчёта площади прямоугольника. На вход есть 2 значения - целочисленные числа, либо вещественные (дробные). Результатом необходим расчёт площади и вывод его в таком же типе данных.
Приложение-игра. Необходимо во время игры хранить разные значения - числа, строки и игровые моменты, а также отдельно файлы сохранений.
Приложение-чат. Необходимо хранить разные временные данные в самом приложении, например - данные пользователей, переписки и др. Для возможности доступа в различных систем - также их копия в базе данных на сервере проекта.
Исходя из перечисленных примеров, хранение информации - необходимость, возникающая в ходе постановки задачи и разработки.
Наиболее частые места хранения информации:
1. В переменных (изменяемые значения)
2. В константах (статичные значения)
3. В файлах (расположенные рядом с приложением, либо в другом месте диска)
4. В базе-данных (в сети Интернет)
Стоит отметить, что в Pascal есть возможность создания своих типов данных, но в этом пока нет смысла. Также пока мы будем использовать только хранение внутри приложения и в файлах.
2. Типы хранимых данных
Данные могут представляться в различных форматах. Сейчас перечислим наиболее используемые в Pascal:
String
Строка (или же набор символов). В программе выделяются одинарными кавычками.
Пример: writeln('Hello world');
Integer
Это целое число. В коде никак не выделяется, а также возможна отметка отрицательного значения знаком минус.
Пример: writeln(123);
Real или Double
Это вещественные типы. В коде никак не выделяются и также имеют возможность отметки отрицательного значения.
Пользу можно отметить в том, что при выполнении деления чисел будет наиболее уместно получить результат именно в этом типе данных.
Пример: writeln(123.234); //Важный момент: пишется не запятая, а точка.
Char *^*
Это любой символ. В системе хранятся различные символы. Данный тип хранит 1 любой символ, т.е. это могут быть те же: буквы, числа, знаки и т.д. В коде также выделяются одинарными кавычками.
Пример: '*'
Boolean
Это булево значение, а именно истина/ложь. Аналогично будет отметить, что это - 1/0 или true/false. Данный тип удобен в определении истинности выражения или ложности, а используется чаще всего в логической части кода.
Стоит отметить что в Pascal объём хранимой информации во всех типах данных ограничен. Более подробно об этом можно найти в справочном руководстве Free Pascal.
Также обратите внимание, используя материал данной статьи можно теперь сделать вывод, что когда мы вывели строку "Hello world" в предыдущей статье, мы использовали тип - string (строчный тип).
Главное, что мы её - просто вывели, но никак не сохраняли. Для сохранения можно использовать переменные.
3. Переменные
Переменные - это типизированные места хранения данных в программе.
Если более просто, то это - специально выделенная под что-то определённая полка в шкафу. Есть полка для чисел или для строки, либо для ответа на вопрос (true/false).
В программе переменные обозначаются до тела программы, а именно следующим образом:
var
word1 : string;
var - это начало объявления переменных. Здесь не нужно ставить точку с запятой (;) в конце. Дальше мы перечисляем переменные, которые нужны в ходе работы. Формат написания:
<наименование переменной> : <тип переменной>;
Также имеется возможность объявления нескольких переменных через запятую в одной строке:
int1, int2, int3 : integer;
При наименовании действуют те же правила, которые мы описывали ранее, а именно:
Все названия должны начинаться не с цифр и символов, а иначе будет ошибка. (Правильный пример названия переменной 'Yaschik1')
Ранее мы упоминали некоторые типы хранения данных, обратите ещё раз внимание на них - там присутствуют названия string и integer. Т.е. мы теперь знаем какая именно информация будет храниться в данных переменных.
4. Запись данных в коде (присваивание значения переменной)
Исходя из знания как хранится информация мы можем теперь переменным присваивать значение. Выполняется запись с помощью ":=".
Примеры внесения данных в коде:
int1 := 123; //string
r1 := 123.12 //real
str1 := 'Test string'; //string
b1 := true; //boolean
ch1 := '&'; //char
Мы внесли разные данные в разные переменные. Если же какая-нибудь переменная не была объявлена раньше, либо мы внесём информацию не того типа - произойдет ошибка.
При использовании переменных можно отметить, что они могут использоваться как аргументы, указывая их название.
5. Итоги
Мы рассмотрели задачи хранения информации и типы данных. В следующей статье мы узнаем - как осуществляется ввод и вывод, а также напишем первую полезную программу.