- •Программирование на языке высокого уровня
- •1 Часть Учебное пособие Москва 2007
- •Оглавление
- •1. Основы алгоритмизации
- •1.1. Алгоритмизация и требования к алгоритму
- •1.2. Блок-схемы алгоритмов
- •1.2.1. Способы записи алгоритма
- •1.2.2. Блок-схемы
- •1.2.3. Следование, ветвление, цикл
- •1.3. Этапы разработки программы
- •1.3.1. Язык программирования. Программа
- •1.3.2. Этапы разработки
- •1.4. Ошибки
- •1.4.1. Компилятор. Синтаксис и семантика
- •1.4.2. Типы ошибок
- •2. Алфавит языка Турбо Паскаль. Программа
- •2.1. Идентификаторы
- •2.2. Разделители
- •2.3. Специальные символы
- •2.4. Структура Pascal-программы
- •Пример простейшей программы на языке Pascal
- •3. Типы данных
- •3.1. Структура типов данных
- •3.2. Простые типы
- •3.2.1. Порядковые типы
- •3.2.1.1 Целые типы.
- •3.2.1.1.1. Встроенные процедуры и функции, применимые к целым типам
- •3.2.1.2. Логический тип.
- •3.2.1.3. Символьный тип.
- •3.2.1.4. Перечисляемый тип.
- •3.2.2. Вещественные типы
- •3.3. Константы и переменные
- •3.4. Преобразование типов
- •4. Операторы
- •4.1. Ввод данных
- •4.2. Вывод данных
- •4.3. Составной оператор
- •4.4. Условный оператор
- •4.5. Операторы циклов
- •4.5.1. Оператор for
- •4.5.2. Оператор while
- •4.5.3. Оператор repeat
- •4.5.4. Стандартные функции для циклов
- •4.6. Оператор выбора case
- •5. Массивы
- •5.1 Определение массива
- •5.2. Ввод/вывод одномерного массива (вектора).
- •5.3 Типизированные константы – массивы
- •5.4. Сортировка массивов (ранжирование)
- •6. Процедуры и функции
- •6.1. Подпрограммы
- •6.2. Параметры. Глобальные и локальные описания
- •6.3. Процедуры
- •6.4. Функции
- •6.5. Процедура exit
- •6.6. Рекурсия
- •6.7. Директивы подпрограмм
- •6.8. Открытые массивы
- •7. Записи
- •7.1.Определение и правила записи
- •7.2. Оператор присоединения
- •7.3. Записи с вариантами (экономия пространства)
- •8. Множества
- •8.1. Понятие множества
- •8.2. Конструктор множества
- •8.3. Операции над множествами
- •8.4. Примеры программ, использующих множества.
- •Литература
1.4. Ошибки
1.4.1. Компилятор. Синтаксис и семантика
Особое значение для программиста имеет предупреждение и исправление ошибок в алгоритме и программе решения задачи. Прежде чем выполнить программу, ее текст необходимо ввести в компьютер. Для ввода и изменения (редактирования) текстов используется специальная программа — текстовый редактор.
Текст набранной программы, для того чтобы быть "понятым" компьютером, должен быть переведен на язык машинных кодов. Такой перевод называется компиляцией и выполняется специальной программой — компилятором. Компилятор анализирует программу и определяет, содержит ли она ошибки. В случае их обнаружения вся работа останавливается. Если же правила языка программирования не нарушены, то формируется модуль на машинном языке, который затем и исполняется.
В отличие от естественных языков, таких как русский, английский и др., язык программирования имеет очень ограниченное количество "слов", понятных компилятору, и строгие правила записи команд. Совокупность этих требований образует синтаксис языка программирования, а смысл команд и других конструкций языка — его семантику.
1.4.2. Типы ошибок
Программирование является творческим процессом, поэтому ошибки неизбежно встречаются даже у опытных программистов. Различают следующие типы ошибок: синтаксические ошибки (ошибки компиляции), ошибки выполнения и ошибки в алгоритме программы (семантические).
1. Синтаксические ошибки возникают при нарушении правил языка (в нашем случае — языка Turbo Pascal), их обнаруживает компилятор, который не может из-за ошибки "понять" назначение команды.
2. Ошибки выполнения не нарушают синтаксис языка. Однако они приводят к ошибочным операциям в процессе выполнения программы, например попытке деления на ноль или извлечения квадратного корня из отрицательного числа. Перечень Turbo Pascal об ошибках содержит более 200 сообщений (см. приложение 1).
3. Ошибки в алгоритме программы при верных исходных данных и внешне безошибочной работе программы приводят к неверным результатам. Этот тип ошибок наиболее коварен и труден для исправления, т. к. пользователь, получая ошибочный результат, считает его верным, поскольку никаких сообщений об ошибках не было. Семантические ошибки должен обнаруживать сам программист. В поиске и исправлении ошибок ему может оказать существенную помощь интегрированная среда разработки Turbo Pascal и ее встроенный отладчик.
2. Алфавит языка Турбо Паскаль. Программа
Система программирования Т-П представляет собой единство двух самостоятельных начал:
-
Компилятора с языка программирования Паскаль
-
Инструментальной оболочки Турбо.
Язык так назван в честь выдающегося французского математика и философа Блеза Паскаля (1623-1662). Разработал язык Паскаль в 1970 году Никлас Вирт. Турбо Паскаль разработан фирмой Borland. Предназначен для решения широкого круга задач. Все компоненты формируются из множества стандарта ASCII.
Алфавит – совокупность допустимых в языке символов.
Элементы языка можно условно разбить на 4 группы:
-
Символы, используемые в идентификаторах;
-
Разделители;
-
Специальные символы;
-
Неиспользуемые символы.