ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.03.2025
Просмотров: 709
Скачиваний: 1
СОДЕРЖАНИЕ
11) Структурный тип строка, как специальная форма массива
10)Структурный тип строка, основы обработки строк
7)Функции: описания и вызовы функций.
8)Процедуры: описание и вызовы процедур.
6)Особенности использования параметров в процедурах и функциях.
25)Общая конструкция языка Паскаль.
24)Алфавит языка, ключевые слова, идентификаторы.
22)Стандартные типы данных, операции, выражения.
18)Композиция условий и операторов.
17) Операторы итерационных циклов.
4)Области действия имён в программах.
2)Понятие о типе Множество в Турбо Паскале.
1)Запись как объединение неоднородных данных.
27)Понятие о языках программирования.
26)Система программирования turbo pascal 7.0.
28)Аппаратное и программное обеспечение компьютера.
24)Алфавит языка, ключевые слова, идентификаторы.
Любой язык, в том числе и Паскаль, начинается со своего алфавита. Алфавитом Паскаля являются некоторые символы кодовой таблицы ASCII, которым в Паскале приписан определённый (и фиксированный смысл), а также некоторые цепочки символов. В алфавит входят все латинские (большие и малые) буквы, десятичные цифры, специальные символы и зарезервированные (ключевые) слова. К специальным символам относятся символы операций (+,-, *, /), бинарных отношений (=,>,<,), скобки (простые, квадратные, фигурные), разделительные символы (., :; ), кавычки (''), а также символы ^,@, $, #. Кроме того, к алфавиту относятся некоторые пары символов (рассматриваемые как неделимые): <> - символ неравенства, >= и <= - больше или равно (меньше или равно), := - символ присваивания. Дополнительную группу символов алфавита составляют ключевые слова (зарезервированные слова). Их в Паскале несколько десятков .Примерами ключевых слов являются program, begin, end, var. Эти и некоторые другие последовательности символов ASCII зарезервированы в Паскале, им приписан фиксированный смысл (например, begin - открывающая операторная скобка) и использовать их в другом смысле нельзя. Заметим, что русские буквы не являются элементами алфавита Паскаля, как и некоторые другие символы кодовой таблицы. Это не значит, что их нигде нельзя использовать, но их использование в программах на Паскале ограничено только определенными конструкциями.
Замечаие: В Паскале не делается различие между большими и малыми латинскими буквами, они равнозначны и взаимозаменимы.
Паскаль - формальный язык, основная цель которого - представление алгоритма решаемой задачи. Каждая конструкция Паскаля имеет свой точный смысл, и изучение конструкций Паскаля имеет две стороны: во-первых, это изучение синтаксиса конструкций (т.е. правил их записи), с другой стороны - изучение смысла конструкций.
Для описания синтаксиса мы будем использовать простые формальные средства - нотацию Бэкуса-Наура, а для описания семантики - пояснения на естественном языке.
Нотация Бэкуса-Наура (называемая также БНФ) описывает синтаксис конструкций языка через небольшое число примитивов:
Метаопределение - заключённое в угловые скобки название конструкции (название может рассматриваться как комментарий конструкции). Примеры: <буква>, <ключевое слово>, <литерал>, <комментарий>. При этом последовательность символов, не заключенная в угловые скобки, рассматривается буквально (т.е. только как последовательность написанных символов).
Равенство по определению будем обозначать сочетанием 3 символов ::=
Альтернативный выбор (союз "или") будем обозначать символом |
Необязательный выбор конструкции будем заключать в квадратные скобки [ ]
Повторяющуюся (нуль или более раз) конструкцию будем заключать в фигурные скобки { }.
Введённых примитивов вполне достаточно для синтаксического определения конструкций языка Паскаля, которые нам предстоит рассмотреть. Продемонстрируем введённые примитивы рядом примеров описания используемых далее конструкций языка Паскаль.
Синтаксическое определение понятия "цифра":
<цифра> ::= 0|1|2|3|4|5|6|7|8|9
Синтаксическое определение понятия "литерал ":
<литерал> ::= ' {< символ кодовой таблицы >} '
Синтаксическое определение понятия "комментарий":
{ < строка символов ASCII, не содержащая символов { и } > }
Одной из важных конструкций Паскаля является идентификатор (имя). Имя может обозначать переменную, функцию, тип данных или другие элементы программы. Понятие имени во многом аналогично его использованию в естественном языке и является одним из фундаментальных понятий языка.
В языках программирования имена часто используются для обозначения переменных.В Паскале имена могут использоваться даже для обозначения именованных констант.
Имена (кроме стандартных имён) выбирает программист в процессе разработки программы и этот выбор должен облегчать чтение текста программы: имя должно "говорить само за себя" - пояснять смысл используемого объекта. При этом имена должны быть одновременно и достаточно выразительными и достаточно лаконичными.(Синтаксические ограничения в выборе имени даёт определение имени:
<имя> ::= <латинская буква или символ _> { < латинская буква >| <цифра >| _ }
Примеры имён: alfa, F1, test_1m; неправильные имена: тест1, 2_vol.
Некоторые имена являются стандартными именами Паскаля. К их числу относятся имена стандартных функций, процедур, типов и др
Примеры таких стандартных имён: write, odd, integer, boolean. Заметьте, что русские буквы нельзя использовать в именах Паскаля!
Существуют только три конструкции Паскаля, в которых разрешено использовать любые символы (в том числе и русские буквы):- это:
Символьные и строковые константы - это, соответственно, один символ или любые последовательности символов кодовой таблицы, заключенные в апострофы. Пример: ' Это - строка символов'. Литералы - важные конструкции языка, с которыми мы будем еще неоднократно иметь дело. Они используются в операторах ввода-вывода и при обработке строк.
Комментарии - любые последовательности символов кодовой таблицы (не содержащие фигурных скобок), заключенные в фигурные скобки. Пример комментария: { Программа на TURBO PASCAL}. Заметим, что фигурные скобки есть ограничитель для комментариев, и использовать их ни в каком другом смысле нельзя.
23)Структура программы.
Любая программа на Турбо Паскале имеет одну и ту же общую структуру
[ program < имя программы > ; ]
[ <раздел описаний > ]
begin
< раздел операторов >
end.
Эта структура состоит из заголовка программы (необязательного), раздела описаний (который может в особых случаях отсутствовать) и раздела операторов, содержащего хотя бы один оператор.
Заголовок начинается ключевым словом program и имеет единственное назначение - идентифицировать программу. Имя программы - идентификатор, выбираемый программистом.
В разделе описаний должны быть описаны все нестандартные имена, используемые далее в разделе операторов этой программы. Раздел описаний реализует принцип сильной типизации, согласно которому каждый используемый объект должен быть описан и каждый объект может быть только одного типа. Описанию подлежат: типы, метки, переменные, именованные константы, процедуры, функции, модули, объекты (классы). Синтаксическая форма описаний зависит от вида описываемого объекта. Общие свойства описаний:
Каждый вид описания начинается некоторым ключевым словом (характеризующим вид описываемого объекта). Например: var - для описания переменных, type - для описания типов, function - для описания функции.
Порядок описаний произвольный (за исключением uses -описания используемых модулей, которое должно быть первым описанием в программе).
Объекты со стандартными именами не описываются (они считаются уже описанными), если эти объекты используются в их стандартном смысле.
Остановимся более подробно на форме описания для переменных и констант. Описание переменных программы использует следующую синтаксическую структуру:
<описание переменных одного типа > ::= var < список переменных > : < тип > ;
где: < список переменных > ::= <имя переменной > {, < имя переменной > }
В разделе описаний может быть несколько записанных подряд описаний переменных разных или одинаковых типов, при этом ключевое слово var достаточно указать лишь один раз. В качестве типа могут указываться имена типов или собственные описания типа. Например: