- •Часть 1
- •Предмет и задачи информатики
- •История эвм
- •Состав вычислительной системы
- •Аппаратное обеспечение
- •Программное обеспечение
- •Операционная система
- •Кодирование Двоичный код
- •Кодирование чисел
- •Кодирование текстовых данных
- •Кодирование графических данных
- •Представление цвета в машинной графике
- •Кодирование звуковой информации
- •Прикладное программное обеспечение Системы обработки текстов
- •Интегрированный пакет Microsoft Office
- •Текстовый процессорWord
- •Создание в документе листа Microsoft Excel
- •О рисунках и других графических объектах
- •Закрепление областей листа
- •Скрытие и отображение столбцов и строк
- •Выделение фрагментов документа
- •Ввод данных с клавиатуры
- •Ввод текста
- •Ввод чисел
- •Ввод формул с клавиатуры
- •Установка границ ячеек
- •Работа с диаграммами
- •Работа с базами данных Основные понятия
- •Объекты базы данных
- •Запросы
- •Страницы
- •Макросы и модули
- •Безопасность баз данных
- •Технологии программирования
- •Алгоритм, программа
- •Интегрированная среда разработки приложений в Delphi
- •Стандарт и диалекты языка
- •Основы Паскаля
- •Основные понятия языка Алфавит
- •Имена и идентификаторы
- •Программные элементы
- •Описания
- •Раздел констант
- •Типизированные константы
- •Переменные
- •Функции и процедуры
- •Правила записи текста программы
- •Концепция данных
- •Основные типы данных Целые типы
- •Битовые операции
- •Вещественные типы
- •Тип дата-время
- •Символьные типы
- •Логические типы
- •Выражения
- •Оператор присваивания
- •Составной оператор
- •Раздел меток
- •Оператор перехода
- •Пустой оператор
- •Раздел типов
- •Условный оператор
- •Перечислимые типы (перечни)
- •Оператор варианта
- •Ограниченные типы
- •Операторы цикла
- •Операторы цикла с параметром
- •Оператор цикла с постусловием
- •Оператор цикла с предусловием
- •Регулярные типы (массивы)
- •Многомерные массивы
- •Комбинированные типы (записи)
- •Оператор присоединения
- •Подпрограммы
- •Подпрограммы-процедуры
- •Подпрограммы-функции
- •Формальные и фактические параметры
- •Параметры-значения
- •Параметры-переменные
- •Параметры-константы
- •ПроцедураExit
- •Процедурные типы
- •Множественные типы
- •Оглавление
- •Часть 1
Стандарт и диалекты языка
Для возможности широкого обмена алгоритмами, записанными на данном алгоритмическом языке, и обеспечения их однозначного понимания приняты международные стандарты языка. Однако на практике используется несколько различных версий, или «диалектов» языка.
Версия, в которой по сравнению со стандартом исключены некоторые возможности, называется подмножеством эталонного языка, или его сужением. Включение дополнительных возможностей приводит к появлению версии, называемойрасширением эталонного языка. Реализация языка обычно является одновременно расширением и сужением стандарта.
Мы будем изучать Object Pascal.
Основы Паскаля
В основе алгоритмических языков лежит формульно-словесный способ записи алгоритмов. Алгоритмический язык (как и любой другой) образуют три его составляющие: алфавит,синтаксисисемантика.
Алфавит– это фиксированный для данного языка набор основных символов,т.е. «букв алфавита»,из которых должен состоять текст на этом языке – другие символы в тексте не допускаются.
Синтаксис–это система правил, определяющих допустимые конструкции из символов алфавита. С помощью этих конструкций представляются записанный на данном языке алгоритм в целом и его отдельные компоненты. Таким образом, для каждой последовательности символов синтаксис позволяет ответить на вопрос: может ли она являться текстом на данном языке.
Семантика– это система правил истолкования языковых конструкций, позволяющиходнозначно воспроизвести процесс обработки заданных исходных данных по заданной программе.
При описании языка и при построении алгоритмов используются определенные понятия языка. Каждое понятие алгоритмического языка подразумевает некоторую синтаксическую единицу (конструкцию) и определяемые ею свойства программных объектов или процесса обработки данных, т.е. понятие определяется во взаимодействии синтаксических и семантических правил. Синтаксические правила показывают, как образуется данное понятие из других понятий и (или) символов алфавита, а семантические правила определяют свойства данного понятия в зависимости от свойств, используемых в нем понятий.
Запись текста на алгоритмическом языке представляет собой строго линейную последовательность символов, т.е. не допускается использование верхних и нижних индексов, обыкновенных дробей и т.п.
Для того, чтобы определить (описать) синтаксис алгоритмического языка, так же необходим какой-то язык, т.е. речь идет о метаязыке(«надязыке»), предназначенном для описания других языков. Наиболее распространенными являютсяметалингвистические формулы Бэкуса-Наура (язык БНФ)и синтаксические диаграммы. На языке БНФ синтаксис языка программирования описывается достаточно компактно и совершенно строго в виде формул, весьма похожих на математические.
В металингвистических формулах все понятия заключаются в угловые скобки «<» и «>». Кроме того используются спецсимволы:
«::=» – «по определению есть»;
«|» – либо, или;
«{» и «}» - задает повторение любое число раз.
Для каждого понятия языка должна существовать единственная метаформула, в левой части которой указывается определяемое понятие, т.е. метапеременная языка БНФ, а правая часть формулы тем или иным способом задает все множество значений этой метапеременной, т.е. все допустимые конструкции, которые объединяются в это понятие.
Например, консрукция <переменная>::=A|B– означает, что под термином переменная понимается любая из букв A или B.
