На предыдущем уроке мы познакомились с оператором описания "Константа", данный оператор не изменяет свое значение в процессе работы программы. Но в большинстве случаев при решении задач в ходе работы программы, оператору описания необходимо менять свое значения (чаще всего неоднократно). Для этих случаев в языке программирования Паскаль существует оператор описания "Переменная".


Синтаксис описания переменной:
VAR
ИмяПеременной1 : ТипПеременной;
ИмяПеременной2, ИмяПеременной3 : ТипПеременной;
Описание переменной отличается от описания константы. Значение переменной не присваивается в описании переменной, каждой переменной присваивается значение в ходе действия программы. После имени переменной идёт знак " : " (двоеточие), затем задаётся тип переменной. Несколько однотипный переменных можно задать, разделяя их запятой. В конце описания переменной ставится знак " ; " (точка с запятой).

INTEGER - целочисленные данные, во внутреннем представлении занимают 2 байта; диапазон возможных значений - от -32768 до +32767; данные представляются точно;
REAL - вещественные данные, занимают 6 байт; диапазон возможных значений модуля - от 2.9Е-39 до 1.7Е+38; точность представления данных - 11...12 значащих цифр;
CHAR - символ, занимает 1 байт;
STRING - строка символов, занимает МАХ+1 байт, где МАХ - максимальное число символов в строке;
BOOLEAN - логический тип, занимает 1 байт и имеет два значения: FALSE (ложь) и TRUE (истина).
Подробнее с каждым типом переменных мы познакомимся в ходе нашего курса.Пример описания переменных:
var
number : integer; {целочисленная переменная number}
x, y : real; {вещественные переменные X и Y}
option : char; {символьная переменная option}

read (список);
readln(список);
В скобках указывается список имен переменных через запятую. Процедура readln без параметров (без скобок) ожидает нажатия клавиши Enter.
С клавиатуры можно ввести целые, вещественные, символьные и строковые величины. Вводимые значениядолжны разделяться любым количеством пробельных символов (пробел, табуляция (tab), перевод строки (Enter)).
Особенность ввода символов и строк состоит в том, что пробельные символы в них ничем не отличаются от всех остальных, поэтому разделителями являться не могут.
В следующей задаче мы рассмотрим как действует оператор ввода с клавиатуры.
Задача 1. Напишите программу которая запросит ввести с клавиатуры два целых числа и выведет на экран сумму этих чисел.
Решение задачи 1.
var
x,y:integer; {задаём целочисленные переменные x и y}
begin {Начало действия программы}
writeln('Введите первое число'); {Выводим на экран фразу "Введите первое число"}
readln (x); {Присваиваем переменной х значение первого числа}
writeln('Введите второе число'); {Выводим на экран фразу "Введите второе число"}
readln (y); {Присваиваем переменной y значение второго числа}
write('Cумма чисел равна ',x+y); {Выводим на экран фразу "Сумма чисел равна " и сумму переменных x и y}
end. {Конец программы}


Вводим первое число, процедура readln(x); присваивает значение введенного числа переменной х и переводит курсив на следующую строку.
Далее программа запрашивает ввод второго числа (writeln('Введите второе число');) и переводит курсив на следующую строку.
Вводим первое число, процедура readln(y); присваивает значение введенного числа переменной y и переводит курсив на следующую строку.
Процедура write('Cумма чисел равна ',x+y); выводит на экран строку Cумма чисел равна и результат сложения двух чисел.
Обратите внимание на некоторые части данной программы:
В процедуре writeln('Введите первое число'); мы выводи строку символов (Введите первое число), данную строку в программе заключаем в одинарные кавычки ( ' ). Фразы заключенные в данные кавычки воспринимаются компилятором, как набор символов (пробелы тоже символы), а не как переменные. Если кавычки не поставить, то компилятор выдаст ошибку, так как не найдет переменных с данным именем.
Процедура write('Cумма чисел равна ',x+y); сначала выводит на экран строку символов (Cумма чисел равна ), затем выводит на экран сумму переменных x и y ( x+y ).
Задача 2. Усложним нашу задачу. Напишем программу которая запросит ввести с клавиатуры два целых числа и выведет на экран сумму этих чисел, разность чисел, умножение и деление.

var
x,y:integer;
begin
writeln('Введите первое число');
readln (x);
writeln('Введите второе число');
readln (y);
writeln('Cумма чисел равна ',x+y);
writeln('Разность чисел равна ',x-y);
writeln('Умножение чисел равна ',x*y);
writeln('Деление чисел равна ',x/y);
end.

В данной программу для вывода результатов мы использовали оператор вывода на экран writeln вместо write для того, чтобы перемещать курсор на следующую строку, в противном случае все четыре ответа слились бы в одну строку.
Также мы использовали простейшие арифметические операции:
+ сложение,
- вычитание,
* умножение,
/ деление.


- Что такое переменная.
- Типы переменных.
- Оператор ввода с клавиатуры.
- Как выводить на экран сообщения.
- Простейшие арифметические операции над целыми числами.
Предыдущий урок | Оглавление | Следующий урок |