Константы и переменные
End.
Begin
Структура программы
Программирования высокого уровня
Тема 6. Паскаль – структурный язык
Контрольные вопросы
1. Приведите структуры следования и ветвления (полное и неполное).
2. Приведите структуры циклов Пока и До.
3. Отличие циклов До и Пока.
4. На чем основано нисходящее проектирование?
5. Что вы можете сказать о концепции модульного проектирования?
6. Что такое объект в объектно-ориентированном программировании?
7. Три принципа объектно-ориентированного программирования.
8. Особенность декларативного программирования.
9. Перечислите методологии программирования.
10. Что такое CASE-системы?
11. В каких областях применяются экспертные системы?
12. Что входит в состав экспертной системы?
13. Отличие знаний от данных.
14. Приведите модели представления знаний.
15. Что такое продукционная модель представления знаний?
16. Что такое семантические сети в представлении знаний?
17. Что такое фреймы в представлении знаний?
18. Какие стратегии вывода для продукционной модели вы знаете?
Паскаль-программа является текстовым файлом с собственным именем и с расширением .pas.
Правила языка Паскаль предусматривают единую для всех программ форму основной структуры:
Program <Имя программы>;
<Раздел описаний>
<Тело программы>
Здесь слова Program, Begin и End являются служебными.
Программа заканчивается служебным словом end, после которого ставится точка. Описания величин (в разделе Const, Var) и операторы друг от друга отделяются символом «;» (точкой с запятой).
Сама запись программы в принципе может производиться вообще в одну стоку. При этом ее части должны отделяться друг от друга хотя бы одним пробелом. Однако такая запись неудобна для чтения, недостаточно наглядна, поэтому рекомендуется придерживаться приведенной структуры, а в теле программы по возможности записывать по одному оператору в строке.
Имена программы и используемых величин (констант, переменных) выбираются программистом самостоятельно в соответствии с правилами построения идентификаторов:
· идентификатор должен быть уникальным, то есть одним и тем же именем разные объекты не могут быть названы;
· идентификатор имеет ограничение по длине (зависит от конкретной реализации языка на компьютере);
· идентификатор может состоять только из символов латинского алфавита, цифр и знака подчеркивания («_»);
· идентификатор не может начинаться с цифры.
Все объекты, не являющиеся зарезервированными в Паскале, перед первым использованием в программе должны быть описаны. Это производится для того, чтобы компьютер перед выполнением программы зарезервировал память под соответствующие объекты и поставил в соответствие этим участкам памяти идентификаторы. Раздел описаний может состоять из шести подразделов:
1. Описание внешних модулей, процедур и функций (Uses);
2. Описание меток (Label);
3. Описание констант (Const);
4. Описание типов, задаваемых пользователем (Type);
5. Описание переменных (Var);
6. Описание функций и процедур (Procedure, Function).
Если одна и та же величина используется в программе несколько раз, то удобнее было бы обозначить ее каким-нибудь именем и использовать это имя везде, где требуется записать соответствующую константу. Кроме сокращения размера исходного текста программы, это позволит избежать случайных ошибок, а также упростит отладку программы. Под константу не выделяется память. Значение константы в теле программы изменить нельзя.
Следует обратить внимание на то, что при записи числовых констант с дробной частью эта часть отделяется от целой точкой, а не запятой (например, 3.15). Для записи очень больших по модулю или очень малых (близких к нулю) чисел существует возможность записи их в так называемой экспоненциальной форме (форме с плавающей точкой). Например: 2.4567Е-06. Здесь буква «Е» отделяет мантиссу (совокупность значащих цифр числа с десятичной точкой после первой цифры) от порядка (показателя степени десятки в стандартном виде числа).
Константы, представляющие собой строковые величины, заключаются в апострофы (например, 'привет').
Описание именованных констант начинается служебным словом Const. Далее следуют записи вида: <Идентификатор> = <значение>;
Пример: