- •СОДЕРЖАНИЕ
- •Раздел 1. ОБЩИЕ СВЕДЕНИЯ О ПРОГРАММНОМ ОБЕСПЕЧЕНИИ
- •1.1. Принцип программного управления
- •1.2. Автоматическое выполнение команд программы
- •1.3. Этапы постановки и решения задачи на компьютере
- •1.4. Назначение и классификация языков программирования
- •1.4.1. Машинно-ориентированные языки
- •1.4.2. Машинно-независимые языки
- •1.5. Структура программного обеспечения
- •1.5.1. Системы программирования
- •1.5.2. Операционные системы
- •Раздел 2. ОСНОВЫ АЛГОРИТМИЗАЦИИ
- •2.1. Алгоритм и его свойства
- •2.2. Способы описания алгоритмов
- •2.2.1. Словесное описание
- •2.2.2. Графическое описание
- •2.2.3. Запись на алгоритмическом языке
- •2.3. Разновидности структур алгоритмов
- •2.3.1. Линейный вычислительный процесс
- •2.3.2. Разветвляющийся вычислительный процесс
- •2.3.3. Циклический вычислительный процесс
- •Раздел 3. СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ
- •3.1. Теория структурного программирования
- •3.2. Реализация структурного проектирования в современных языках программирования
- •3.3. Преобразование неструктурированных программ в структурированные
- •3.3.2. Метод введения переменной состояния
- •3.3.3. Метод булевого признака
- •3.4. Способы графического представления структурированных схем алгоритмов
- •3.4.1. Метод Дамке
- •3.4.2. Схемы Насси-Шнейдермана
- •Раздел 4. АЛГОРИТМИЧЕСКИЙ ЯЗЫК ПРОГРАММИРОВАНИЯ ПАСКАЛЬ
- •4.1. Общая характеристика языка Паскаль
- •4.2. Алфавит языка Паскаль
- •4.3. Основные понятия языка
- •4.3.1. Идентификаторы
- •4.3.2. Комментарии
- •4.4. Структура простейшей программы
- •4.5. Способы описания синтаксиса
- •4.5.2. Синтаксические диаграммы
- •Раздел 5. ОСНОВНЫЕ ТИПЫ ДАННЫХ
- •5.1. Классификация данных
- •5.2. Стандартные скалярные типы данных
- •5.2.1. Целочисленные типы
- •Формат
- •5.2.2. Вещественные типы
- •Функция
- •5.2.3. Символьный тип (тип Char)
- •5.2.4. Логический тип (тип Boolean)
- •Функция
- •5.3. Выражения
- •5.4. Оператор присваивания
- •Раздел 6. СТРУКТУРА ПРОГРАММЫ
- •6.1. Программный модуль
- •6.2. Раздел меток
- •6.3. Раздел констант
- •6.4. Раздел типов
- •6.5. Раздел переменных
- •6.6. Раздел операторов
- •Раздел 7. ОПЕРАТОРЫ
- •7.1. Составной оператор
- •7.2. Программирование линейных и разветвляющихся структур алгоритмов
- •7.2.1. Оператор перехода Goto
- •7.2.2. Условный оператор If
- •7.2.3. Оператор варианта (выбора) Case
- •7.2.4. Пустой оператор
- •7.3. Программирование циклических структур алгоритмов
- •7.3.1. Оператор цикла с параметром (оператор For)
- •7.3.2. Оператор цикла с постусловием
- •7.3.3. Оператор цикла с предусловием
- •7.3.4. Операторы Continue и Leave
- •Раздел 8. СТРУКТУРИРОВАНИЕ И ОФОРМЛЕНИЕ ПРОГРАММ
- •Раздел 9. ОПИСАННЫЕ СКАЛЯРНЫЕ ТИПЫ
- •9.1. Перечислимый скалярный тип
- •9.2. Тип диапазон
- •10.1. Массивы
- •10.1.1. Задание массивов
- •10.1.2. Действия над элементами массивов
- •10.1.3. Действия над массивами
- •10.1.4. Типизованные константы типа массив
- •10.2. Строковые данные
- •10.2.1. Строковые константы
- •10.2.2. Строковые переменные
- •10.2.3. Встроенные функции, определенные над данными типа String
- •ЛИТЕРАТУРА
РАЗДЕЛ 4. АЛГОРИТМИЧЕСКИЙ ЯЗЫК ПРОГРАММИРОВАНИЯ ПАСКАЛЬ
4.1.Общая характеристика языка Паскаль
Язык Паскаль относится к процедурно-ориентированным языкам высокого уровня. Разработан американским ученым Никласом Виртом в 1971г. в качестве языка для обучения программированию. Базой при разработке явился язык Алгол.
Достоинства языка Паскаль:
1)относительная простота (т.к. разрабатывался с целью обучения программированию);
2)идеология языка Паскаль близка к современным методикам и технологиям программирования, в частности, к структурному программированию и нисходящему проектированию (методу пошаговой детализации) программ. Паскаль может использоваться для записи программы на различных уровнях ее детализации, не прибегая к помощи схем алгоритмов;
3)гибкие возможности в отношении используемых структур данных;
4)высокая эффективность программ;
5)наличие средств повышения надежности программ, включающих контроль правильности использования данных различных типов и программных элементов на этапах трансляции, редактирования и выполнения.
В связи с этим язык Паскаль в настоящее время находит самое широкое распространение для решения большого круга разнообразных практических и научных задач.
Грамматическое описание любого языка программирования включает в
себя:
1)алфавит – набор основных символов языка, используемых при записи текста программы;
2)синтаксис – правила построения фраз языка;
3)семантику – смысловое значение фраз языка.
81
4.2. Алфавит языка Паскаль
Алфавит языка делится на три группы:
1) Буквы.
В данную группу входят прописные (заглавные) буквы латинского алфавита от A до Z, строчные буквы латинского алфавита от a до z и символ подчеркивания ( _ ). В программах строчные латинские буквы эквивалентны прописным везде, за исключением литералов (строковых констант). Например, неразличимы записи
cost |
COST |
Cost , |
но литералы
‘cost’ ‘COST’ ‘Cost’
различны.
2) Цифры.
В данную группу входят десять десятичных цифр от 0 до 9.
При записи программы на бумаге принято перечеркивать цифру 0, чтобы отличить ее от буквы O, которая не перечеркивается.
3) Специальные символы.
Специальные символы делятся на две подгруппы.
Первую подгруппу составляют простые и составные специальные символы.
К первой подгруппе относятся следующие простые символы.
а) Символы-ограничители, содержащие знаки арифметических операций:
+плюс (сложение, объединение множеств, сцепление строк);
–минус (вычитание, разность множеств);
*звездочка (умножение, пересечение множеств);
/наклонная черта, слэш (знак деления, результат всегда
имеет вещественный тип); знаки операций сравнения:
<меньше;
82
>больше;
=равно; знаки-разделители:
. точка (десятичная точка в вещественных константах, разделитель полей при обращении к записи, признак конца модуля (блока));
, запятая (разделитель в перечислениях)
: двоеточие (отделяет объявляемый элемент от его определения и метку от оператора);
; точка с запятой (разделитель операторов программы); ′ апостроф (ограничитель строковых констант);
знаки скобок:
( |
) |
левая и правая скобки (для выделения подвыражений); |
|
[ |
] |
левая |
и правая квадратные скобки (для выделения |
{ |
} |
индексов массивов); |
|
левая |
и правая фигурные скобки (ограничители |
комментариев);
б) Символы, не входящие в подгруппу символов-ограничителей:
@ коммерческое ‘at’ (операция взятия адреса элемента);
#номер (номер элемента в коде ASCII);
$ знак доллара (признак шестнадцатеричных констант);
^знак карата (обозначение указателей и динамических переменных); пробел (символ, не имеющий обозначения).
Вязыке имеются определенные комбинации символов, называемые
составными специальными символами, которые имеют специальное значение. Данные символы также относятся к символам-ограничителям:
<= меньше или равно; >= больше или равно; <> не равно;
:= операция присваивания;
.. обозначение диапазона.
Кроме того, имеются составные символы, являющиеся аналогами специальных символов скобок:
(* |
*) |
аналоги { |
}; |
(. |
.) |
аналоги [ |
]. |
В языке |
Паскаль |
используются также синтаксическое понятие |
«шестнадцатеричная цифра». Шестнадцатеричными цифрами являются десятичные цифры и буквы A, B, C, D, E, F (или a, b, c, d, e, f). Обозначения шестнадцатеричных констант начинаются со знака $. Например, $F – это число 15 в десятичной системе счисления.
Шестнадцатеричные цифры относятся к составным символам.
Вторая подгруппа специальных символов состоит из служебных слов.
83