В Паскале, как и в других языках программирования данные делятся на константы и переменные. Для получения текущих значений переменных и констант к ним можно обращаться в программе по именам.
Обычно переменная получает текущее значение в результате выполнения оператора присваивания (например, s := 0 – переменной s присваивается значение 0). Это значение будет сохраняться до тех пор, пока этой переменной не будет присвоено новое значение (при этом предыдущее значение теряется безвозвратно!)
Важно: попытка присвоить переменной значение иного типа является ошибкой.
Описание переменных
В случае, если необходимо описать несколько переменных, то они перечисляются в списке через запятую. Например:
В последних двух случаях тип переменной определяется автоматически по типу выражения в правой части. Заметим, что по умолчанию все переменные, описанные в главной программе, обнуляются.
PascalABC.NET позволяет описывать переменные внутри составного оператора begin-end в специальном операторе описания переменной. Такие описания называются внутриблочными. Для внутриблочного описания можно использовать формы приведенные выше. Например:
Описание констант
Константы – это элементы данных, значения которых устанавливаются в разделе описаний и не изменяются в процессе выполнения программы
Раздел описания именованных констант в языке программирования Паскаль начинается с ключевого слова const после которого следуют описания в следующих формах:
Использование именованных констант позволяет улучшить читаемость программы и облегчает внесение в нее изменений.
Copyright © 2014-2021, Урок информатики
Все права защищены
Структура программы в Pascal
Любая программа, написанная на языке Pascal состоит из заголовка программы и некоторого блока. Блок содержит раздел описаний, в котором определяются все локальные по отношению к данной программе объекты, и раздел операторов. Он задает действия, которые необходимо выполнять, над этими объектами.
Заголовок программы
В имени программы нельзя использовать какие-либо предописанные имена (зарезервированные слова). Они используются в программе только в том значении, которое зафиксировано для них разработчиками языка Pascal. Ниже приведен список таких слов.
| and | end | nil | set |
| array | file | not | then |
| begin | for | of | to |
| case | function | or | type |
| const | goto | packed | until |
| div | if | procedure | var |
| do | in | program | while |
| downto | label | record | with |
| else | mod | repeat |
Заголовок носит чисто информативный характер и никак не влияет на программу. Программу можно написать и не используя его. После имени программы в ранних редакциях языка указывались круглые скобки и в них давались имена входных и выходных файлов задачи. В последних версиях языка Pascal имена входных и выходных файлов в заголовке программы отсутствуют.
Пример правильного написания заголовка:
Пример неправильного написания заголовка:
Имя метки может включать в себя буквы английского алфавита, цифры и знак подчеркивания. При этом, в отличии от имени программы метка может начинаться с цифры, да и вообще состоять только из цифр, но это число должно представлять собой целое число без знака, лежащее в диапазоне от 0 до 9999.
Пример правильного написания меток:
Раз уж разговор зашел про метки, то нужно сказать, что использование меток и оператора перехода goto не желательно при написании программы на Pascal. Применять его стоит только в необычных, исключительных ситуациях, когда приходится нарушать естественную структуру алгоритма. Частое появление в программе на Pascal оператора перехода свидетельствует о том, что программист еще не научился думать на Pascal.
Этот раздел необязателен, если у вас в программе не используются метки.
Использование имен констант делает программу более «читаемой» и способствует улучшению ее документируемости. Кроме того, это позволяет программисту сгруппировать в начале программы величины, зависящие от машины или характерные для данного примера: здесь они более заметны и их легче изменить. Тем самым улучшается переносимость программ и их модульность.
Константа может иметь только предопределенный (стандартный) тип данных. Тип присваивается константе по внешнему виду значения и в соответствии с этим типом отводится память для хранения значения константы.
Помимо стандартных типов данных в Pascal (Real, Integer, Boolean, Char) пользователь может задать новые типы. Структура раздела описания типов имеет вид:
Имя типа представляет собой идентификатор, который может употребляться в других типах, описанных вслед за данным типом. Вообще, новые типы можно определять и в разделе переменных Var, поэтому можно обойтись без этого раздела. Приведу несколько примеров описания типов:
Этот раздел является обязательным. Переменные отличаются от констант тем, что им можно присваивать новые значения при исполнении программы. Любая переменная, которая будет использована в программе должна быть описана. Что включает в себя описание переменной? Это значит, что переменной должен быть присвоен какой-либо тип данных, который характеризует множество значений, которые может принимать объект; множество операций, которые могут применяться к объекту; размер памяти, занимаемый объектом.
Структура раздела имеет вид:
Тип переменных представляет собой имя (идентификатор), описанный в разделе TYPE при явном описании типа, или собственно описание типа в случае его неявного задания. Примеры описания переменных:
В разделе Function и Procedure описываются пользовательские процедуры и функции, если таковые имеются. Если их нет, то этот раздел не обязателен в программе.
Структура раздела имеет вид:
Структура процедур и функций та же самая, что и у основной программы. Отличие описаний состоит в том, что идентификаторы констант, переменных, процедур и функций, описанных в соответствующих разделах описаний пользовательских процедур и функций, распространяются только на блоки, где они описаны и на блоки внутренние по отношению к ним. На внешние блоки, в том числе на тело основной программы, они не распространяются.
Переменные и константы
Переменные
Любая программа обрабатывает данные (информацию, объекты). Данные, с которыми работает программа, хранятся в памяти компьютера (чаще оперативной). Программа должна знать, где они лежат, каким объемом памяти она располагает, как следует интерпретировать данные (например, как числа или строки). Для обеспечения программе доступа к участкам памяти существует механизм переменных.
Переменные описываются в начале программы и как бы сообщают о том, с какими данными будет работать программа и какой объем памяти они займут. Другими словами, резервируется память. Но это не значит, что в эти ячейки памяти помещаются конкретные значения (данные). На момент резервирования памяти в них может быть что угодно.
В процессе выполнения программы в ячейки памяти будут помещаться конкретные значения, извлекаться оттуда, изменяться, снова записываться. Мы же через программу обращаемся к ним посредством имен переменных, которые были описаны в начале программы.
Имена переменных могут быть почти любым сочетанием английских букв и цифр (без пробелов). Нельзя чтобы имена переменных совпадали со словами, которые являются какими-либо командами самого языка программирования. Нельзя начинать имена переменных с цифры или специального символа. Для того чтобы имена переменных были удобны для восприятия, надо стараться придерживаться пары правил. Если программа не простейший пример, то имена переменных должны быть осмысленными словами или их сокращениями. Желательно, чтобы имена переменных не были слишком длинными.
В Pascal прописные и строчные буквы в именах переменных не различаются.
При описании переменных указывается не только их имя, но и тип. Тип переменных сообщает о том, сколько отвести под них памяти и что за данные там планируется сохранять. Точнее хранится там всегда будут числа в двоичной системе счисления. Но что они значат, может быть чем угодно: целым или дробным числом, символом, строкой, массивом, записью и др. Т.е. тип переменной определяет то, что мы можем сохранить в участке памяти, с которым связана описываемая переменная.
Пример работы программы:
Итак, переменные связаны с участками памяти, содержимое которых может меняется по ходу выполнения программы в определенных пределах.
Длина переменных
Ранние версии компиляторов Паскаля имели ограничение на учитываемую длину имен переменных. В имени учитывались лишь первые восемь символов. Поэтому, например, такие переменные как variable1 и variable2 компилятор воспринимал как одно и тоже, т.к. первые восемь символов совпадали.
В современных версиях компиляторов с языка Pascal таких ограничений нет. Например, в результате работы приведенной ниже программы как в среде Free Pascal, так и Turbo Pascal 7.1 на экран выводятся два разных числа (10 и 20). Это значит, что компиляторы учитывают больше восьми символов в именах переменных (и других идентификаторов: именах констант, процедур и др.).
Константы
Что делать, если в программе требуется постоянно использовать какое-нибудь одно и тоже число. Вроде бы это не проблема. Можно описать переменную, затем присвоить ей значение и не изменять его в программе. Однако это не всегда удобно (можно нечаянно изменить), поэтому в языках программирования для хранения данных помимо переменных существуют константы.
Главное преимущество констант заключается в том, что они описываются в начале программы и им сразу там же присваивается значение, а при выполнении программы константы не изменяются. Но если при правке кода, программист решит поменять значение константы, он впишет в ее описание другое значение, а сам код программы редактировать не придется. Поэтому, если в программе часто планируется использоваться какое-то значение, опишите его в разделе констант, который в программе располагается до раздела переменных:
Значениями констант могут быть данные большинства типов, используемых в языке Паскаль.
Рассмотрим такую программу:
В ней используется константа n со значением 10. Программа считает сумму десяти чисел в диапазоне от 1 до 10. Если нам захочется посчитать сумму чисел до 20, то достаточно будет изменить значение константы в начале программы. Если бы константа не использовалась, то пришлось бы просмотреть весь код программы и исправить значение 10 на 20. Если программа большая, то легко ошибиться: не найти или исправить не то значение.
Типизированные константы
В языке Паскаль помимо обычных констант используются типизированные константы. Можно сказать, что они занимают промежуточное положение между переменными и константами. Они получают значение при описании (как константы), но могут его менять в теле программы (как переменные).
Описываются типизированные константы в разделе констант:
Учитель информатики
Сайт учителя информатики. Технологические карты уроков, Подготовка к ОГЭ и ЕГЭ, полезный материал и многое другое.
Уроки Паскаль № 2 Переменные и типы данных
Здравствуйте, сегодня второй урок по языку программирования Паскаль в котором мы поговорим о переменных.
Урок № 2 Переменные и типы данных.
Что такое переменные? Мы можем представить себе для простоты понимания переменную как ящик, в который мы помещаем какие-то вещи. В нашем случае, случае языка программирования предметы могут быть число, строки, символы.
Переменные различаются по типам. Есть типы для чисел, есть типы для строк, для больших чисел, для маленьких чисел, для чисел с запятыми т. е. нецелых чисел и целых чисел соответственно. Типы эти определены не просто так они нужны для того что бы компилятор понимал какие мы можем действия применить. Так как с числами применяются одни действия, а со строками совсем другие.
Давайте познакомимся какие типы переменных существуют в паскале, и как объявлять переменные.
Вот типы данных Паскаль.
Слева идентификатор или название типа непосредственно который мы будем писать в программе. Дальше длина, байт то место, которое занимает эта переменная в памяти компьютера. Если говорить техническими понятиями, то переменная это именованная область памяти компьютера, в котором записан. Для нас это определение достаточно глубокое и не особо нужное.
Дальше указан диапазон (множество) значений. Т. е. для типа integer это целый тип, есть также вещественные типы, логические типы и символьные типы.
В табличке можно увидеть диапазон значений которое может принимать эта переменная. Для каждого диапазона чисел если мы знаем заранее сколько приблизительно каких чисел у нас могут быть, то мы можем определить тип, который нам нужно конкретно под эту задачу, что бы он не ел много памяти и в тоже время охватывал диапазон значений, которые у нас могут быть теоретически в этой переменной использоваться.
Вещественные типы это для не целых чисел т. е. с запятой или точкой.
Логический тип может принимать только два значения true и false.
Символьный тип все символы кодировки АСКИ.
Создадим целую переменную a: integer; и b: integer;
Можно записать в 2 строки:
Можно сократить записать.
И давайте выведем на экран переменную, если вы помните с прошлого урока вывод на экран у нас делается специальная функция writeln( );
Давайте попробуем еще одну штучку. В скобках параметрах функции writeln мы можем указать не просто переменную или какой-нибудь текст, а можем указать выражение (а+в) и программа подсчитает и выведет на экран.
Вот такие не хитрые способы вывода нескольких аргументов этой функции. Следующий урок будет посвящен константам и вводу данных. Так же еще поговорим про переменные и их типы.
Pascal. Переменные.
В этом уроке речь пойдёт о переменных в языке Pascal. Давайте попробуем на образах понять, что же такое переменная.
Переменная представляет собой «ящик», в который мы можем что-то положить, что-то заменить и что-то удалить, и у этого ящика есть какой-то размер, получается в него может поместится далеко не всё.
Мы можем что-то достать из ящика и показать это, потом положить обратно.
Получается — переменная своеобразный ящик, с которым можно работать.
Насчёт содержимого ящика: в зависимости от типа ящика, можно положить в него различные предметы.
Так же и с переменными в Pascal: им задаётся специальный тип, благодаря которому в переменную можно положить ( записать ), например числа, или строковые значения.
Отличие языка Паскаль от других в том, что этот язык дисциплинирует программиста, в Паскаль всё строго — все типы переменных должны соответствовать их содержимому. О типах переменных мы с Вами поговорим в следующем уроке.
Если давать определение как в умных книжках, то
Переменная — содержит в себе адрес области ( ячейки ) памяти, которая выделяется в момент компиляции ( запуска ) программы, и при помощи переменной мы можем получить «доступ» к той области ( ячейки ) памяти и выполнить какие-то действия с данными, которые там находятся.
Поскольку область памяти выделяется в момент запуска программы, то в этой области памяти может что-то находится, поэтому опытные программисты всегда советуют после объявления переменной очищать её.
Все переменные в языке Паскаль ( Pascal — как Вам удобнее ) должны быть объявлены в разделе — var.
До этого мы говорили о структуре Паскаль, и там мы упоминали об этом разделе.
Поскольку язык Паскаль — строгий язык, то и объявление переменных должно быть соблюдено верно.
Мы должны сначала написать слово — var — это зарезервированное слово — поэтому его можно использовать только в объявлении переменных.
После слова var мы можем объявлять переменные, что мы имеем в виду под словом объявлять — в программе в разделе var, если он есть в программе, будут считываться все переменные и их типы, после в памяти будут выделены ячейки с определёнными типами, и нашим переменным будут присвоены адресы к этим ячейкам ( областям ) памяти, после чего в них можно будет записывать именно те данные, которые будут соответствовать типу переменных.
И так, насчёт объявления переменных, пишем var, после перечисляем названия переменных на английском языке через запятую, после последней переменной ставится двоеточие и пишется тип этих переменных. Вот пример:





