Учим Паскаль - Переменные
В общих чертах о переменных
Легче всего переменную представить как ячейку. У такой "ячейки" есть имя( адрес,
по которому мы будем ссылаться на неё в программе),
и в этой ячейке что-то находится(значение переменной). Допустим, мы хотим создать переменную, в которой будет храниться наш возраст.
Назовём эту переменную age. В Паскале это будет выглядеть вот так:
begin
age:=15;
end.
Запускаем программу в PascalABC.NET и... Вылезает ошибка!!!
"Но почему? Я же всё правильно переписал(а). Наверное, это из-за двоеточия перед '=', его там не должно быть", - подумаешь ты.
Но нет, двоеточие как раз обязательно должно быть поставлено перед знаком равно, иначе компилятор обругает вас.
Ошибка заключается в том, что мы забыли обьявить переменную.
Делается это в блоке var перед begin. Переменная обьявляется через такую запись: имя_переменной:тип_переменной. О типах переменных мы поговорим ниже в этом же уроке. А вот о том, как можно и как нельзя называть переменные надо рассказать сейчас:
В названии переменных можно использовать латинские буквы, цифры, но только не в начале(age1 - можно использовать, 1age - ошибка!!!), а также символ подчеркивания '_'.
Что ж, давайте перепишем программу, чтобы она работала
var
age:integer;
begin
age:=15;
writeln(age);
end.
Как видите, всё работает!
Заметьте, что после обьявления переменных и присваивания им значений тоже ставится знак ';'!
Типы переменных
Обьясняю, почему я после 'age:' написал integer. Я "сказал" компилятору, что переменная age является целочисленной. Существуют разные типы переменных:
|
|
Работа с переменными
Целочисленные и дробные переменные можно складывать, делить, умножать, вычитать одну из другой:
var
a,b:integer;
c:real;
begin
a:=1+7;
b:=a*2;
c:=(b+a)/1.25;
b:=b-4;
writeln('a= ',a,', b= ',b,', c= ',c);
end.
Также можно находить целое и остаток от деления при помощи div и mod:
var
a,b:integer;
begin
a:=12;
b:=a div 10;//целое от деления переменной a(12) на 10
a:=b mod -1;//Остаток от деления b(1) на -1
writeln(b);//выведет 1
writeln(a);//выведет 0
end.
Кстати, пара символов // означает комментарий. Компилятор игнорирует текст, который написан после двух бэкслэшей. Незаменимая функция при написании длинного кода, чтобы не забыть за что отвечает тот или иной блок.
Узнав о переменных и о том, как работать с ними, давайте немного попрактикуемя и напишем несколько интерсеных программ
Тяжело в учении - легко в бою
Давайте напишем программу, которая будет принимать значения температуры в градусах по Фаренгейту, и переводить их в градусы по Цельсию. Формула такова: °C=(°F-32)/1.8. Т.к. температура может быть выражена дробным числом, тип переменных должен быть real. За вывод текста на экран отвечает функция writeln(), а за ввод значенияч переменной с клавиатуры - функция readln()(подробнее об этих функциях мы поговорим в следующем уроке).
Код программы:
var
c,f:real;
begin
writeln('Введите температуру в градусах по Фаренгейту: ');
readln(f);
c:=(f-32)/1.8;
writeln(f,'°F = ',c,'°C');
end.
Давайте введём 33.8
Получается около 1°C.
Домашнее задание:
Попробуйте написать программу, которая бы получалча число и выводила на экран куб этого числа.