Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование

.pdf
Скачиваний:
61
Добавлен:
16.03.2016
Размер:
970.88 Кб
Скачать

ЗАКЛЮЧЕНИЕ

Для того чтобы что-то понять — надо это уже знать. . .

Те виды информации, для которых у нас нет готовых когнитивных схем, мы просто не воспринимаем. . . В пустую голову ничего поместить нельзя.

М. Холодная Психология интеллекта: парадоксы исследования

Вы научились основам программирования, даже менее того, основам программирования на Паскале. И даже если Ваши программы при создании не требовали от Вас значительных усилий — знайте, что Вы еще новичок в программировании.

Чтобы стать экспертом, Вам предстоит написать множество различных программ на различных языках программирования. Программирование требует значительных интеллектуальных усилий. И императивное (или процедурное) программирование на таких языках, как Паскаль и C++, требует мыслить в компьютерных терминах. Со временем Вы познакомитесь с другими парадигмами программирования, для которых достаточно мышления в терминах задачи. Программировать станет легче, но никогда творческий акт, лежащий в основе программирования, не удастся передать самим компьютерам. И поэтому, возможно, ваше умение и опыт будут всегда востребованы!

ГЛОССАРИЙ

Аксиоматическая семантика — логические формулы, которые определяют («аксиоматизируют») определенные свойства программ.

Алгоритм — свод конечного числа правил, задающих последовательность выполнения операций при решении той или иной специфической задачи.

Алфавит — набор основных символов, «букв алфавита», никакие другие символы в предложениях языка не допускаются.

Булевский (логический) тип используется для представлений значений двузначной логики — всего два значения: истина, ложь.

Вещественные типы обозначают множества вещественных чисел в различных диапазонах.

Вызов подпрограммы — выполнение действий, заданных в подпрограмме, может быть произведен в некоторой точке программы посредством указания имени этой подпрограммы.

Выражение — понятие языка программирования — представляет собой формальное правило для вычисления некоторого (нового) значения.

Вычислительная структура состоит из одного или нескольких типов и некоторых основных (элементарных, базовых) операций над этими типами, каждая с результатом одного из этих типов.

Глобальные объекты — константы, типы, переменные и т. п., описанные в программе, но не являющиеся локальными.

Динамическое распределение памяти, т. е. выделение памяти для отдельных элементов данных в тот момент, когда они появляются во время выполнения программы, а не во время трансляции.

Записи — составной тип; есть абстракция конечной последовательности элементов, но в отличие от массивов объединяет значения различных типов.

Интерпретатор — транслятор, который преобразует лишь небольшой фрагмент исходной программы в машинные команды, а затем, дождавшись, когда компьютер их выполнит, переходит к обработке следующего фрагмента.

Интерпретация — переход (часто только воображаемый, мыслимый) от представления к абстрактной информации, т. е. к значению представления.

Глоссарий

183

Информатика — это наука и техника, связанные с машинной обработкой, хранением и передачей информации.

Информация — называют абстрактное содержание («содержательное значение», «семантика») какого-либо высказывания, описания, указания, сообщения или известия. Внешняя форма сообщения — представление.

Компилятор — транслятор, который читает всю программу целиком и делает ее перевод на машинный язык и помещает команды в память компьютера. После того, как программа откомпилирована, исходная программа больше не нужна.

Конкатенация (сцепление) — операция со строками; применяется для соединения (сцепления) нескольких строк в одну результирующую строку.

Константа — понятие алгоритмического языка, имеет имя (обозначение) и значение (элемент данных), но в отличие от переменной значение не может измениться.

Локальные объекты — константы, типы, переменные и т. п., описанные в подпрограмме.

Массив — составной тип; каждое значение массива состоит из фиксированного числа элементов одного и того же базового типа (т. е. значение содержит фиксированное число однотипных компонент).

Множество — составной тип; возможными значениями переменных множественного типа являются все подмножества значений базового типа.

Модули — независимо хранимые и разрабатываемые, независимо компилируемые и тестируемые программные единицы со строго определенными интерфейсами, которые могут объединяться с главной программой.

Ограниченный тип определяется сужением (ограничением) допустимого диапазона значений некоторого стандартного дискретного типа. Задается минимальное и максимальное значение диапазона.

Оператор — фрагмент программы: представляет законченную фразу языка и определяет некоторый вполне законченный этап обработки данных.

Оператор ввода (чтения) — оператор, предназначенный для ввода в программу входных данных;

Оператор вывода (записи) — оператор, предназначенный для вывода из программы результатов работы.

Оператор присваивания — оператор, предназначенный для изменения значений переменных.

Оператор цикла с предусловием (цикл while) используется в случае, когда циклическими действиями управляет логическое условие и, как правило, к моменту выполнения цикла не ясно, сколько нужно повторить циклические действия.

Операционная семантика — описание последствий отдельных шагов вычислений, которые имеют место при выполнении программы.

Отладка — деятельность, направленная на установление точной природы известной ошибки в программе, а затем на исправление этой ошибки.

184

Глоссарий

Параметр-значение — формальный параметр подпрограммы; передает значение внутрь подпрограммы. Вычисленное значение внутри подпрограммы невозможно с помощью параметра-значения передать наружу.

Параметр-переменная — формальный параметр подпрограммы; передает значение внутрь подпрограммы, и вычисленное значение внутри подпрограммы с помощью параметра-переменной передается наружу.

Переменная — понятие алгоритмического языка, имеет имя (обозначение) и значение (элемент данных).

Перечислимый тип — тип, который задается путем явного перечисления всех его возможных значений, причем каждое такое значение будет определяться только именем.

Подпрограмма — обособленная именованная часть программы со своим собственным локальным контекстом имен.

Программа— запись алгоритма на языке программирования.

Процедура — подпрограмма; служит для задания совокупности действий, направленных на изменение внешней по отношению к подпрограмме программной обстановки и, как следствие, определение новых значений переменных в программе. Вызов процедуры играет роль оператора.

Пустой оператор — не имеет «графического» начертания, и не производит никаких действий. Необходимость введения такого понятия диктуется в первую очередь синтаксическими причинами.

Рекурсия — организация повторения выполнения фрагмента программы, равносильная циклам.

Семантические правила определяют свойства данного понятия алгоритмического языка в зависимости от свойств используемых в них понятий.

Символьный (литерный) тип — значениями этого типа являются элементы набора литер, определяемого реализацией языка.

Синтаксис — система правил, определяющая допустимые конструкции из букв алфавита. Синтаксис отвечает на вопрос: является ли последовательность символов программой на данном языке или нет?

Синтаксические правила показывают, как образуется данное понятие алгоритмического языка из других понятий и (или) букв алфавита.

Списки — рекурсивные структуры данных; список может быть либо пустым, либо не пустым. В последнем случае он имеет голову (произвольный элемент данных) и хвост, который в свою очередь является списком.

Ссылочный тип — тип, применяемый при динамическом распределении памяти. Значение ссылочного типа (неформально) — адрес в памяти, где располагается конкретное значение базового типа.

Старшинство (приоритеты) операций — задает очередность выполнения операций, указанных в выражении.

Глоссарий

185

Строковый тип данных определяет множество символьных цепочек произвольной длины от нуля символов до заданного их числа.

Структурное программирование — программирование, ориентированное на общение с людьми, а не с машиной.

Тестирование — процесс выполнения программы с намерением найти ошибки.

Технология программирования — это совокупность методов и средств разработки (написания) программ и порядок применения этих методов и средств.

Тип переменной — множество значений, которые может принимать переменная, и, как следствие, множество операций, допустимых над данной переменной.

Транслятор — программа, переводящая с алгоритмического языка на машинный язык.

Условный оператор применяется для задания разветвления в программе, т. е. выбора действий в зависимости от истинности или ложности какого-либо условия.

Файловый тип — составной тип; файл интерпретируется как потенциально бесконечный список значений одного и того же (базового) типа.

Функциональная семантика — описание функций программы, т. е. установление отношения между входными и выходными данными (экстенсиональное или наблюдаемое отношение).

Функция — подпрограмма; служит для определения алгоритма вычисления нового значения некоторого простого типа, и вызов функции должен быть операндом в выражении.

Целые типы обозначают множества целых чисел в различных диапазонах.

Цикл с параметром — оператор, позволяющий задать автоматическое изменение значения некоторой переменной и использовать эти значения в последовательных итерациях.

Язык металингвистических формул Бэкуса-Наура (язык БНФ) позволяет описывать формальные языки (в том числе и языки программирования) в виде некоторых формул.

Учебное издание

Зюзьков Валентин Михайлович

ПРОГРАММИРОВАНИЕ

Учебное пособие

Корректор Осипова Е. А. Компьютерная верстка Насынова Н. Е.

Подписано в печать 05.12.13. Формат 60х84/8. Усл. печ. л. 21,86. Тираж 300 экз. Заказ

Издано в ООО «Эль Контент» 634029, г. Томск, ул. Кузнецова д. 11 оф. 17

Отпечатано в Томском государственном университете систем управления и радиоэлектроники.

634050, г. Томск, пр. Ленина, 40 Тел. (3822) 533018.