В этом уроке речь пойдёт о переменных в языке Pascal. Давайте попробуем на образах понять, что же такое переменная.
Переменная представляет собой «ящик», в который мы можем что-то положить, что-то заменить и что-то удалить, и у этого ящика есть какой-то размер, получается в него может поместится далеко не всё.
Мы можем что-то достать из ящика и показать это, потом положить обратно.
Получается — переменная своеобразный ящик, с которым можно работать.
Насчёт содержимого ящика: в зависимости от типа ящика, можно положить в него различные предметы.
Так же и с переменными в Pascal: им задаётся специальный тип, благодаря которому в переменную можно положить ( записать ), например числа, или строковые значения.
Отличие языка Паскаль от других в том, что этот язык дисциплинирует программиста, в Паскаль всё строго — все типы переменных должны соответствовать их содержимому. О типах переменных мы с Вами поговорим в следующем уроке.
Если давать определение как в умных книжках, то
Переменная — содержит в себе адрес области ( ячейки ) памяти, которая выделяется в момент компиляции ( запуска ) программы, и при помощи переменной мы можем получить «доступ» к той области ( ячейки ) памяти и выполнить какие-то действия с данными, которые там находятся.
Поскольку область памяти выделяется в момент запуска программы, то в этой области памяти может что-то находится, поэтому опытные программисты всегда советуют после объявления переменной очищать её.
Все переменные в языке Паскаль ( Pascal — как Вам удобнее ) должны быть объявлены в разделе — var.
До этого мы говорили о структуре Паскаль, и там мы упоминали об этом разделе.
Поскольку язык Паскаль — строгий язык, то и объявление переменных должно быть соблюдено верно.
Мы должны сначала написать слово — var — это зарезервированное слово — поэтому его можно использовать только в объявлении переменных.
После слова var мы можем объявлять переменные, что мы имеем в виду под словом объявлять — в программе в разделе var, если он есть в программе, будут считываться все переменные и их типы, после в памяти будут выделены ячейки с определёнными типами, и нашим переменным будут присвоены адресы к этим ячейкам ( областям ) памяти, после чего в них можно будет записывать именно те данные, которые будут соответствовать типу переменных.
И так, насчёт объявления переменных, пишем var, после перечисляем названия переменных на английском языке через запятую, после последней переменной ставится двоеточие и пишется тип этих переменных. Вот пример:
var number, count, position: integer;
О типах переменных и о правописании названий переменных Вы узнаете в следующих уроках.
Если Вы захотите объявить и переменные другого типа, то с новой строки, всё в том же разделе пишите названия переменных и в конце новый тип:
var number, count, position: integer; name, city, region: string;
Тип Integer — целые числа, что значит мы сможем записывать в переменные такого типа только целые числа и при том есть ограничения по размеру этих чисел — например они не должны быть больше 36000 — более точный размер Вы узнаете в соответствующем уроке.
Тип string — строковые значения.
Давайте создадим программу, в которой мы считаем с клавиатуры число в переменную, и выведем её значение на экран:
Program z1; var number: integer; begin readln(number); writeln('Значение переменной: ',number); readln; end.
Довольно простой пример.
С переменными можно так же производить арифметические выражения, точнее со значениями переменных.
Давайте например, считаем два числа, и выведем их сумму:
Program z2; var number1, number2: integer; begin readln(number1,number2); writeln(number1+number2); readln; end.
Можно их сумму занести и в отдельную переменную.
Так как Паскаль — строгий язык, то есть и ограничения на операции с типами переменных — например, если у переменной тип Integer, то нельзя просто так производить операцию деления, нужно использовать операцию деления на цело — div.
В переменные, которые имеют тип — целые числа — нельзя заносить вещественные числа, для этих чисел есть свой тип — real.
Давайте напоследок напишем пример простенькой программы:
Program Proga; var st:string; i:integer; begin write('Введите слово: '); readln(st); for i:=1 to length(st) div 2 do if(st[i]<>st[length(st)-i+1])then begin writeln('Не палиндром'); readln; exit; end; writeln('Палиндром'); readln; end.
Все использованные функции в этой программе мы объясним Вам в следующих уроках.