Переменная — это именованная область памяти для хранения данных, которые могут изменяться в процессе исполнения программы.
Переменная характеризуется:
Имена и типы переменных указываются в разделе описаний и не могут изменяться в процессе выполнения программы.
Простые типы
Дискретные (можно перечислить возможные значения):
Вещественные (real, double, extended) — служат для представления действительных чисел с ограниченной точностью.
Структурированные типы
var
имена переменных : тип;
...
имена переменных : тип;
Например:
var
a, b, c: real;
i, n: integer;
f: boolean;
Для обмена информацией между компьютером, исполняющим программу, и пользователем служат операторы ввода и вывода (точнее, операторы вызова процедур ввода и вывода).
Оператор ввода нужен, чтобы компьютер получил исходные данные. В программе на Pascal он записывается следующим образом:
read(переменные);
или
readln(переменные);
При выполнении оператора программа будет приостановлена, пока пользователь не наберет на клавиатуре значения и не нажмет клавишу «Enter». Затем введенные значения будут помещены в переменные, указанные как параметры процедуры ввода. Например, при выполнении оператора
read(a, b);
компьютер будет ожидать ввода двух значений, которые затем будут помещены в переменные a и b.
Операторы read и readln отличаются тем, что во втором случае после ввода данных будет переведена строка, т.е. последующие сообщения компьютера будут выводиться с новой строки.
Оператор вывода нужен, чтобы компьютер показал результаты работы программы или какие-либо вспомогательные сообщения. В программе на Pascal он записывается следующим образом:
write(выражения);
или
writeln(выражения);
При выполнении оператора вычисляются значения выражений, после чего эти значения выводятся на экран монитора. Например, при выполнении оператора
write(a + b, c);
на экран будет выведена сумма переменных a и b, а также значение переменной c. Если нужно вывести на экран какое-либо текстовое сообщение, его нужно заключить в апострофы (одиночные кавычки):
write('Нет решения');
Операторы write и writeln отличаются тем, что во втором случае после вывода данных будет переведена строка, т.е. последующие сообщения компьютера будут выводиться с новой строки.
Для того чтобы переменная получила или изменила свое значение, используется оператор присваивания. В Pascal он записывается следующим образом:
переменная := выражение;
Тип переменной должен совпадать с типом выражения либо быть «более широким» совместимым (т.е. вещественной переменной можно присвоить значение целого выражения; строковой переменной можно присвоить значение символьного выражения).
Компьютер сначала вычисляет значение выражения в правой части оператора присваивания, затем помещает его в переменную, указанную слева от символа присваивания «:=».
Например, при выполнении оператора
x := a + b;
переменная x получит значение суммы переменных a и b. При выполнении оператора
n := n + 1
значение переменной n увеличится на единицу.
Запомните! При присваивании переменной нового значения старое будет потеряно безвозвратно. Например, после выполнения операторов a := b;
b := a;
обе переменные будут иметь одинаковые значения, равные тому, которое имела переменная b.
Рассмотрим, как составить простую программу, выполняющую какие-либо вычисления. Для этого нам нужно:
Рассмотрим простейший пример.
Задача
Разработать программу, вычисляющую длину окружности и площадь круга по известному радиусу.
Решение
1) Определим исходные данные и результаты задачи. В данном случае они явно указаны в условии: исходная величина — радиус, результаты — длина окружности и площадь круга. Используем для них традиционные обозначения: R, L и S, соответственно. Все эти переменные могут принимать как целые, так и дробные числовые значения, поэтому следует использовать вещественный тип данных, например, Real.
2) Математически задача описывается известными формулами:
L = 2 ⋅ π ⋅ R [1]
и
S = π ⋅ R2 [2].
3) Алгоритм в данном случае предельно прост:
4) При вычислениях нам (точнее, компьютеру) потребуется значение π. Вообще говоря, практически все реализации Pascal имеют встроенную константу PI, но мы объявим подобную константу самостоятельно.
5) Теперь запишем программу:
program circle; { Имя программы можно выбирать произвольно }
{ В фигурных скобках записываем комментарии — этот текст компьютер пропускает }
const p = 3.14159265358; { Объявление константы }
var L, R, S: Real; { Все переменные одного тип }
begin
write ('Введите величину радиуса:'); { Выводим на экран пояснение }
readln (R); { Вводим значение и переходим на новую строку }
L := 2 * p * R; { Операция умножения обязательно указывается! }
S := p * R * R; { Можно записать S := p * sqr(R); }
writeln ('L=', L:10:3, ' S=', S:10:3); { Выводим поясняющий текст }
{ и значения переменных. Для значений указан }
{ формат: всего 10 знаков, из них 3 — после точки. }
end.