§ 4.1. Общие сведения о языке программирования Паскаль
Языки программирования — это формальные языки, предназначенные для записи алгоритмов, исполнителем которых будет компьютер. Записи алгоритмов на языках программирования называются программами.
Существует несколько тысяч языков программирования. Мы с вами познакомимся с языком программирования Паскаль, который был разработан в 70-х годах прошлого века Никлаусом Виртом (Швейцария). Своё название этот язык получил в честь французского ученого Блеза Паскаля, известного не только своими достижениями в математике, физике и философии, но и созданием первой в мире механической машины, выполнявшей сложение двух чисел.
-
1 С другими стилями программирования вы познакомитесь при изучении курса информатики в 10—11 классах.
4.1.1. Алфавит и словарь языка
- латинские прописные буквы (А, В, С, . X, Y, Z);
- латинские строчные буквы (а, Ь, с, х, у, z);
- арабские цифры (0, 1, 2, . 7, 8, 9);
- специальные символы (знак подчёркивания; знаки препинания; круглые, квадратные и фигурные скобки; знаки арифметических операций и др.).
-
:= (знак операции присваивания);
>= и );
(* и *) (начало и конец комментария).
Информатика. Язык Pascal: Структура программы на языке Pascal. Центр онлайн-обучения «Фоксфорд»
В языке существует также некоторое количество различных цепочек символов, рассматриваемых как единые смысловые элементы с фиксированным значением. Такие цепочки символов называются служебными словами. В табл. 4.1 приведены основные служебные слова, которые мы будем использовать при записи программ на языке Паскаль.
Таблица 4.1
Служебные слова языка Паскаль
Для обозначения констант, переменных, программ и других объектов используются имена — любые отличные от служебных слов последовательности букв, цифр и символа подчеркивания, начинающиеся с буквы или символа подчеркивания.
Прописные и строчные буквы в именах не различаются.
Длина имени может быть любой. Для удобства мы будем пользоваться именами, длина которых не превышает 8 символов.
4.1.2. Типы данных, используемых в языке Паскаль
В языке Паскаль используются различные типы данных. Мы будем пользоваться некоторыми из так называемых простых типов данных:
1
-
1 integer — основной, но не единственный тип для работы с целочисленными данными. Дополнительную информацию по этому вопросу вы можете найти в справочниках по программированию на языке Паскаль.
В вещественном числе целая часть от дробной отделяется точкой, при этом перед точкой и после неё должно быть, по крайней мере, по одной цифре. Пробелы внутри числа недопустимы.
4.1.3. Структура программы на языке Паскаль
- заголовок программы;
- блок описания используемых данных;
- блок описания действий по преобразованию данных (программный блок).
-
2 В 9 классе мы ограничимся рассмотрением разделов описания констант и переменных, оставив рассмотрение других разделов для старшей школы.
Имена переменных одного типа перечисляются через запятую, затем после двоеточия указывается их тип; описание каждого типа заканчивается точкой с запятой. Ниже приведён пример раздела описания переменных:
ИНФОРМАТИКА 8 класс: Общая структура программы в языке Паскаль
Программа может не иметь заголовка; в ней может отсутствовать блок описания данных. Обязательной частью программы является программный блок. Он содержит команды, описывающие алгоритм решения задачи. Программный блок начинается со слова begin и заканчивается словом end с точкой.
Ниже приведён общий вид программы:
Операторы — языковые конструкции, с помощью которых в программах записываются действия, выполняемые над данными в процессе решения задачи.
Точка с запятой служит разделителем между операторами, а не является окончанием соответствующего оператора.
Перед оператором end точку с запятой ставить не нужно.
4.1.4. Оператор присваивания
Основное преобразование данных, выполняемое компьютером, — присваивание переменной нового значения, что означает изменение содержимого области памяти; оно осуществляется оператором присваивания, аналогичным команде присваивания алгоритмического языка. Общий вид оператора:
Операция присваивания допустима для всех приведённых в табл. 4.1 типов данных. Выражения в языке Паскаль конструируются по рассмотренным ранее правилам для алгоритмического языка.
Рассмотрим процесс выполнения операторов присваивания на следующем примере:
При выполнении оператора а:=10 в ячейку оперативной памяти компьютера с именем а заносится значение 10; при выполнении oпeратора Ь:=5 в ячейку оперативной памяти компьютера с именем b заносится значение 5. При выполнении оператора s:=a+b значения ячеек оперативной памяти с именами а и b переносятся в процессор, где над ними выполняется операция сложения. Полученный результат заносится в ячейку оперативной памяти с именем s (рис. 4.1).
Рис. 4.1.
Процесс выполнения оператора присваивания
Самое главное
Паскаль — универсальный язык программирования, получивший своё название в честь выдающегося учёного Блеза Паскаля.
В языке Паскаль используются различные типы данных: целочисленный (Integer), вещественный (Real), символьный (Char), строковый (String), логический (Boolean) и другие.
- заголовок программы;
- описание используемых данных;
- описание действий по преобразованию данных (программный блок).
Вопросы и задания
- В честь кого назван язык программирования Паскаль?
- Почему язык программирования Паскаль считается универсальным?
- Что входит в состав алфавита Паскаля?
- Каких требований следует придерживаться при выборе имён для различных объектов в языке Паскаль?
- Указывая название, обозначение, диапазон и занимаемую область памяти, опишите известные вам типы данных, используемые в языке Паскаль.
- В чём разница между числами 100 и 100.0 в языке Паскаль?
- Какую структуру имеет программа, записанная на языке Паскаль?
- Как записывается раздел описания переменных?
- Запишите раздел описания переменных, необходимых для вычисления:
-
а) значения функции у = х 2 ;
б) площади прямоугольника;
в) стоимости покупки, состоящей из нескольких тетрадей и такого же количества обложек;
г) стоимости покупки, состоящей из нескольких тетрадей, нескольких ручек и нескольких карандашей. - Опишите процесс выполнения операторов присваивания. а:=3; Ь:=4; а:=а+Ь.
- Запишите оператор для:
-
а) вычисления среднего арифметического переменных х1 и х2;
б) уменьшения на единицу значения переменной k;
в) увеличения на единицу значения переменной i;
г) вычисления стоимости покупки, состоящей из нескольких тетрадей, нескольких ручек и нескольких карандашей.
Источник: tepka.ru
Структура паскаль-программы
Цель работы: Изучение структуры типичной программы на языке Паскаль. Формирование навыков работы в среде программированияPascalABC.
Краткие теоретические сведения
Структура Паскаль-программы. Программа на языке ПАСКАЛЬ состоит из заголовка, разделов описаний и раздела операторов.
Program Example_1;
Описания могут включать в себя раздел подключаемых библиотек (модулей), раздел описания меток, раздел описания констант, раздел описания типов, раздел описания переменных, раздел описания процедур и функций.
Раздел описания модулей определяется служебным словом USESи содержит имена подключаемых модулей (библиотек) как входящих в состав
системы PascalABC, так и написанных пользователем. Раздел описания модулей должен быть первым среди разделов описаний. Имена модулей отделяются друг от друга запятыми:
uses CRT, GraphABC;
Любой оператор в программе может быть помечен меткой. В качестве
метки используются произвольные целые без знака, содержащие не более четырех цифр, либо имена. Метка ставится перед оператором и отделяется от него двоеточием. Все метки, используемые в программе, должны быть перечислены в разделе описания меток, например:
label3, 471, 29, Quit;
Описание констант позволяет использовать имена как синонимы констант, их необходимо определить в разделе описаний констант:
constk=1024;maxnum=16384;
В разделе описания переменных необходимо определить тип всех переменных, используемых в программе:
varp, q, i: Integer;
f1, to_be: Boolean;
Типы делятся на две группы: простые и составные, состоящие из элементов простых типов. Некоторые простые типы данных:
Byte.Байтовые. Принимают значения из промежутка от 0 до 255. В памяти для переменной этого типа выделяется 1 байт.
Word.Переменные типа «слово». Принимают значения из промежутка от 0 до 65535. В памяти для переменной этого типа выделяется 2 байта.
Integer.Целые. Принимают значения из промежутка от -32768 до 32767. В памяти для переменной этого типа выделяется 2 байта.
Real.Вещественные (с дробной частью). Принимают значения из промежутка (по модулю) от 2.9*10E-39 до 1.7*10E38. В памяти для переменной этого типа выделяется 6 байт, количество цифр после запятой может достигать 11-12 цифр.
Boolean.Логические. Принимают только два значения: True (истина) и False (ложь).
Описание типов, процедур и функций будет рассмотрено в других лабораторных работах. Отдельные разделы описаний могут отсутствовать, но, в ПАСКАЛЬ — программе должны быть обязательноописанывсекомпоненты программы (метки, константы, переменные и т.д.).
Раздел операторов представляет собой составной оператор, который содержит между служебными словами begin . end последовательность операторов. Операторная часть содержит последовательность предписаний, которые должен выполнить компьютер по ходу программы. Служебные словаbeginиend, окаймляющие операторы, называютсяоператорными скобками.
Операторы отделяются один от другого символом «точка с запятой». После оператора, стоящего перед последнимend программы точку с запятой допускается не ставить. В конце программы всегда ставится символ «точка».
В некоторых реализациях языка Паскаль допускаются отступления в формировании структуры от приведенной последовательности. Например, в PascalABCзаголовок программы не является обязательным, а разделы описания элементов программы могут следовать друг за другом в произвольном порядке. Тем не менее, для сохранения совместимости с другими средами Паскаль — программирования рекомендуется использовать описанную выше структуру программы.
Кроме описаний и операторов ПАСКАЛЬ — программа может содержать комментарии, которые представляют собой произвольную последовательность символов, расположенную между открывающей скобкой комментариев и закрывающей скобкой комментариев > или начинающуюся с символа «//».
Таким образом, программа на языке Паскаль имеет следующий вид:
program имя программы; раздел описаний begin операторы end.
При составлении программ рекомендуется применять следующие практические правила.
Источник: studfile.net
Структура программы на языке программирования Паскаль
На начальном этапе рассмотрим структуру программы на языке программирования Паскаль (Pascal) в минимальном объеме, осветив только необходимые сведения. Более подробно связанные вопросы рассмотрим при дальнейшем изучении.
Выясним сначала правила записи текста программы, которые не находят отражение в описании синтаксиса языка:
- Между двумя последовательными конструкциями языка (идентификатор, число или служебное слово) обязательно располагается хотя бы один разделитель текста (пробел, конец строки, комментарий).
- Разделители текста не могут находится внутри идентификаторов, чисел или служебных слов.
Теперь перейдем непосредственно к структуре. Итак, программа на языке Паскаль состоит из заголовка (элемент необязательный), разделов описаний и раздела операторов .
- program имя;
- разделы описаний
- begin
- раздел операторов
- end. (* npoграмма заканчивается точкой *)
Разделы описаний
Разделы описаний могут быть нескольких видов:
- раздел описания модулей (следует всегда первым, остальные подразделы идут в произвольном порядке);
- раздел описания констант;
- раздел описания переменных (смотрите примеры описания констант и переменных);
- раздел описания меток;
- раздел описания процедур и функций.
Важно: любая величина должна быть описана до ее использования.
Раздел операторов
Раздел операторов начинается и заканчивается соответственно служебными словами begin и end , играющими роль операторных скобок. В этом разделе записывается последовательность операторов, которая должна быть выполнена по программе. Операторы отделяются друг от друга символом «точка с запятой».
Комментарии
Обратим внимание на элемент комментарий — фрагмент, заключенный в фигурные скобки < >или в скобки вида (* *) . Комментарии можно записать в любом месте программы где разрешен пробел. Компилятор игнорирует эти конструкции. Комментарии необходимы для документирования программы (различные замечания и пояснения кода), а также ими удобно пользоваться при отладке программы для временного исключения участка кода.
Источник: informatics-lesson.ru
Структура программы в Паскаль.
В данной статье описывается структура программы в Pascal, описывается каждый раздел, который может присутствовать в программе.
Программист вводит текст программы, произвольно располагая строки на экране. Отступ слева выбирает сам программист, чтобы программа была более читабельной. В одной строке допускается писать несколько операторов. Длинные операторы можно переносить на следующую строку. Перенос допускается в любом месте, где можно сделать пробел.
Максимальная длина строки не должна превышать 127 символов. Из соображений наглядности, удобства просмотра и отладки программы рекомендуется длину строки ограничивать 80 символами. Программы имеют жесткую структуру, описанную в таблице 12.
Синтаксические правила построения предложений языка можно описывать следующими способами:
- схемой (форматом предложения или раздела). В учебном процессе выбран именно этот способ, поскольку он наиболее понятен начинающему программисту;
- синтаксической диаграммой. Этот способ детально формализует синтаксис предложения и используется разработчиками трансляторов с языка Паскаль;
- порождающими правилами РАСШИРЕННЫХ БЭКУСА-НАУРА ФОРМ (РБНФ). Это весьма компактный и в то же самое время наглядный способ записи языковых конструкций. Этот способ используется в статьях и научных разработках. В данном курсе используются только пять элементов РБНФ (таблица 13).
Раздел описания модулей USES.
Раздел имеет структуру:
USES Модуль 1, Модуль 2, . Модуль N, где за ключевым словом USES указывается список, в котором перечисляются все имена библиотек (модулей) стандартных и пользовательских, к процедурам и функциям которых есть обращение в программе. Если таких обращений нет, то раздел USES не нужен.
Пример:
USES CRT, GRAPH, HELP, MYLIB;
В этом примере две стандартные библиотеки — CRT, GRAPH и две пользовательские библиотеки — HELP, MYLIB.
Раздел описания меток LABEL.
Раздел имеет структуру:
LABEL Метка 1, Метка 2, Метка N, где за ключевым словом LABEL указывается список, в котором перечисляются все имена меток, встречающихся в программе.
Пример:
LABEL Ml, 12_BL, 9999;
Метки позволяют менять естественный ход выполнения программы. Ссылка на метку осуществляется оператором GOTO . Если в программе меток нет, то раздел LABEL отсутствует. В теле программы (в разделе операторов) метка ставится перед требуемым оператором и отделяется от него двоеточием.
Пример:
М27: X := А * В — С/2;
Областью действия метки является блок, где она описана. Ниже приведена схема использования меток в тексте программы.
Раздел описания констант CONST.
Раздел существует, если в алгоритме используется по крайней мере одна константа, то есть величина, не изменяющая своего значения в процессе выполнения программы. Попытка изменить значение константы в теле программы будет обнаружена на этапе трансляции.
В стандарте на Паскаль константы определяются следующим способом:
Примеры констант:
CONST
А = 15.7;
BXZ = ‘Серия N123/5’;
MIN_IND = 5D;
С_10 = -0.57Е-6;
L125 = 695;
FLAG = TRUE;
Константа может иметь только предопределенный (стандартный) тип данных. Тип присваивается константе по внешнему виду значения и в соответствии с этим типом отводится память для хранения значения константы.
В качестве расширения стандартного Паскаля разрешено использовать выражения, составленные из ранее определенных констант и некоторых стандартных функций (Abs, Chr, Hi, Length, Lo, Odd, Ord, Pred, Prt, Round, SizeOf, Succ, Swap, Trunc). Примеры использования константных выражений:
CONST
Min = 0;
Max = 250;
Centr = (Max-Min) div 2;
Beta = Chr(225);
NumChars = Ord(‘2’) — Ord(‘A’)+l;
Message = ‘не хватает памяти’;
ErrStr = ‘Ошибка:’ + Message + ‘.’;
Ln10 — 2.302585092994045884;
Ln10R = 1/Ln10;
Константные выражения вычисляются компилятором без выполнения программы на этапе ее создания.
Раздел описания типов TYPE.
Стандартные типы данных (REAL, INTEGER, BOOLEAN, CHAR) не требуют описаний в этом разделе. Описания требуют только типы, образованные пользователем.
Концепция типов — одно из основных понятий в языке. С каждым данным связывается один и только один определенный тип.
Тип — это множество значений + множество операций, которые можно выполнять над этими значениями, то есть правила манипулирования данными. Использование типов позволяет выявлять многочисленные ошибки, связанные с некорректным использованием значений или операций еще на этапе трансляции без выполнения программ.
О Паскале говорят, что он строго типизирован, то есть программист должен описать все объекты, указывая их типы, и использовать в соответствии с объявленными типами. Программы становятся более надежными и качественными. При компиляции информация используется для уточнения вида операции. Так знаком + для данных типа REAL и INTEGER обозначается операция сложения, а для множеств (тип SET) — объединение. Структура раздела описания типов имеет вид:
Имя типа представляет собой идентификатор, который может употребляться в других типах, описанных вслед за данным типом. Раздел TYPE не является обязательным, так как тип можно описать и в разделе переменных VAR. Примеры описания пользовательских типов:
TYPE
DAY = 1..31; Year = 1900.. 2000;
LatBukv = (‘А’, ‘С, ‘D’, ‘G, ‘Н’);
Matr = array[-1..12, ‘А’.. ‘F’] of real;
Раздел описания переменных VAR.
Это обязательный раздел. Любая встречающаяся в программе переменная должна быть описана. В языке нет переменных, объявляемых по умолчанию. Основная цель этого раздела определить количество переменных в программе, какие у них имена (идентификаторы) и данные каких типов хранятся в этих переменных. Таким образом, переменная это черный ящик, а тип показывает, что мы в него можем положить.
Структура раздела имеет вид:
Тип переменных представляет собой имя (идентификатор), описанный в разделе TYPE при явном описании типа, или собственно описание типа в случае его неявного задания. Примеры описания переменных:
TYPE
DAY= 1..31; Matr = ARRAY[1..5,1..8] OF INTEGER;
VAR
A, B: DAY; X, Y: Matr;
YEAR: 1900.. 2000; LES: (LPT, PRN);
А, В, CD, FER51: REAL;
EQUAL: BOOLEAN; SH: CHAR;
I, J, К: INTEGER;
Раздел описания процедур и функций.
Стандартные процедуры и функции, имена которых включены в список зарезервированных слов, в этом разделе не описываются. Описанию подлежат только процедуры и функции, определяемые пользователем.
Структура процедур и функций та же самая, что и у основной программы. Отличие описаний состоит в том, что идентификаторы констант, переменных, процедур и функций, описанных в соответствующих разделах описаний пользовательских процедур и функций, распространяются только на блоки, где они описаны и на блоки внутренние по отношению к ним. На внешние блоки, в том числе на тело основной программы, они не распространяются.
Раздел операторов.
Это основной раздел, именно в нем в соответствии с предварительным описанием переменных, констант, функций и процедур выполняются действия, позволяющие получать результаты, ради которых программа и писалась.
Синтаксис раздела операторов основной программы:
BEGIN
< Операторы выполняются>
< строго последовательно>
…
END.
Комментарий.
Это пояснительный текст, который можно записать в любом месте программы, где разрешен пробел. Текст комментария ограничен: слева — », и может содержать любые символы. Комментарий игнорируется транслятором, и на программу влияния не оказывает.
Пример использования комментария:
PROGRAM PR;
BEGIN
…
>
END.
Средства комментария часто используются для отладки. Так в приведенном выше примере, операторы — 3. N, заключенные в фигурные скобки, временно не выполняются.
Правила пунктуации.
Основным средством пунктуации является символ точка с запятой – ‘;’.
1. Точка с запятой не ставится после слов LABEL, TYPE, CONST, VAR, а ставится
после каждого описания этих разделов.
2. Точка с запятой не ставится после BEGIN и перед END, так как эти слова – операторные скобки.
3. Точка с запятой разделяет операторы, и ее отсутствие вызовет:
А := 333
В := А/10;;;;;
4. Возможна ситуация:
END; следует писать END
END; > END
END; END;
5. Допускается запись метки на пустом операторе — : ;
6. Точка с запятой не ставится после операторов WHILE, REPEAT, DO и перед UNTIL.
7. В условных операторах ‘;’ не ставится после THEN и перед ELSE.
Источник: mojainformatika.ru
Общая структура программы Паскаль
В этой статье ознакомимся с общей структурой программы на языке Паскаль. Это необходимо, чтобы понимать как организована программа на Паскале, с чего ее обязательно начинать, какими командами заканчивать и т.д. Итак, общая структура программы Паскаль состоит из: в состав любой программы на Паскале входит:
Пример:
program Proga;
Раздел описаний в программе Паскаль:
Раздел описаний содержит в себе следующие разделы: 1) раздел подключаемых модулей (библиотек), определяющийся через служебное слово uses. Данный раздел включает имена подключаемых модулей (библиотек), которые либо написаны пользователем, либо уже содержаться в системе Turbo Pascal. Раздел uses должен находится в самом начале раздела описаний (помните об этом). Имена библиотек и модулей разделяются запятыми.
Пример:
uses Graph,Math,CRT;
2) в разделе описания меток должны быть перечислены все метки, которые пользователь использует в программе. При этом любой оператор мы можем пометить меткой, имя которой задается по правилам образования идентификаторов в Турбо Паскаль. Метками могут быть любые числа, но только без знака, содержащие не более 4-х цифр. Метка всегда устанавливается перед оператором и отделена от него двоеточием. Пример:
label 5, 342, 75, metka;
3) раздел описания констант дает возможность использовать имена в качестве синонимов констант. Пример:
const y = 14; min = 456;
4) В разделе описания переменных var указываются все переменные (определяя их тип), которые впоследствии будут использованы в программе. Пример:
t,w,k: integer;m,n:
char; l,p: boolean;
Что же касается описания типов, процедур и функций, то это будет изучено в дальнейшем, а пока, рассмотрим еще один раздел — раздел операторов.
Раздел операторов Pascal:
Раздел операторов — это ничто иное как составной оператор, содержащий между служебными словами begin и endпоследовательность неких операторов, которые разделяются символом «;». Исходный текст программы оканчивается символом «.». Внизу представлена программа, вычисляющая сумму 2-х чисел:
Источник: kvodo.ru