Uploaded by Andrey Nikolaev

Программирование для начинающих — 3-е изд. (эл.)

advertisement
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
3-е издание, исправленное
(электронное)
Москва
БИНОМ. Лаборатория знаний
2012
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
УДК 519.85(023)
ББК 22.18
В27
В27
Великович Л. С.
Программирование для начинающих [Электронный ресурс] / Л. С. Великович, М. С. Цветкова. — 3-е изд., испр. (эл.). —
М. : БИНОМ. Лаборатория знаний, 2012. — 287 с. : ил.
ISBN 978-5-9963-1025-8
Книга посвящена знакомству с основами программирования на языках
Бейсик (версия QBasic) и Паскаль (версия Turbo Pascal 7.0), являющихся
хорошими «наглядными пособиями» при начальном изучении программирования. Оба языка изучаются в современной школе; знакомство хотя
бы с одним из них требуется при сдаче вступительных экзаменов по
информатике в вузы.
Для учащихся общеобразовательных школ и для самостоятельного
освоения азов программирования.
УДК 519.85(023)
ББК 22.18
По вопросам приобретения обращаться:
«БИНОМ. Лаборатория знаний»
Телефон: (499) 157-5272
e-mail: binom@Lbz.ru
http://www.Lbz.ru, http://metodist.Lbz.ru
ISBN 978-5-9963-1025-8
c БИНОМ. Лаборатория знаний,
2012
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
Интерактивное оглавление
Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
Технологии программирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Алгоритмическая (процедурно-ориентированная) технология программирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Объектно-ориентированная технология программирования . . . . . . .
Логическая технология программирования . . . . . . . . . . . . . . . . . . . . . .
Обзор современных технологий программирования. . . . . . . . . . . . . . .
Этапы решения задач на компьютере . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
13
16
20
22
27
Основы программирования на языке Бейсик . . . . . . . . . . . . . . . . . . . . . . 34
Основные сведения о языке Бейсик . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Выражения в Бейсике . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Программирование на Бейсике: начальный курс . . . . . . . . . . . . . . . . .
Оператор присваивания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор ввода данных INPUT . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор записи данных DATA и оператор чтения данных
READ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор RESTORE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор PRINT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор LPRINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор REM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор STOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор END . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Примеры простейших программ на Бейсике . . . . . . . . . . . . . . . . . . . . .
Управление порядком выполнения программ на языке Бейсик . . . .
Оператор безусловного перехода GOTO . . . . . . . . . . . . . . . . . . . . .
Оператор
условного
перехода
(условный
оператор)
IF...THEN...ELSE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Логические выражения в операторе IF . . . . . . . . . . . . . . . . . . . . . .
Оператор ON...GOTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор SELECT CASE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Операторы для организации цикла . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Цикл с фиксированным количеством повторений FOR...NEXT
Цикл
с
неопределенным
количеством
повторений
WHILE...WEND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор DO...LOOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Основные графические возможности Бейсика. . . . . . . . . . . . . . . . . . . .
Общие замечания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
iv
Перейти на страницу с полной версией»
34
37
42
42
44
45
46
47
48
48
49
49
49
53
54
54
57
58
58
59
63
63
68
68
70
70
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
Интерактивное оглавление
v
Рисование точек—операторы PSET и PRSET . . . . . . . . . . . . . . . .
Рисование линий. Оператор LINE . . . . . . . . . . . . . . . . . . . . . . . . . .
Рисование прямоугольников . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Рисование окружностей, эллипсов и дуг. . . . . . . . . . . . . . . . . . . . .
Оператор PAINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Оператор DRAW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Основы модульного программирования. Подпрограммы . . . . . . . . . .
Классификация подпрограмм . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Процедуры—оператор SUB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Функции, определяемые пользователем . . . . . . . . . . . . . . . . . . . . .
Подпрограмма SUBROUTINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Функция DEF FN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Работа с файлами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Примеры типовых программ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
73
74
74
75
76
79
80
80
82
83
85
87
93
Основы программирования на языке Паскаль . . . . . . . . . . . . . . . . . . . . . 106
Основные сведения о языке Паскаль . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Алфавит языка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Идентификаторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Константы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Порядковые типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Целые типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Встроенные функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Вещественные типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Символьный тип данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Логические типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Внутреннее представление чисел в памяти компьютера . . . . . . . 112
Программирование на Паскале: начальный курс . . . . . . . . . . . . . . . . . 117
Выражения и операции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Структура программы на Паскале . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Основные операторы Паскаля . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Оператор безусловного перехода. . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Составной оператор . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Условный оператор. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Оператор выбора. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Массивы и их обработка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Назначение, виды и описание массивов . . . . . . . . . . . . . . . . . . . . . 131
Сортировка массива . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Примеры типовых программ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Циклы с неопределенным количеством повторений. . . . . . . . . . . 141
Обработка данных строкового типа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Примеры типовых программ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Множества . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
vi
Интерактивное оглавление
Записи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Общие сведения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Текстовые файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Типизированные файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Нетипизированные файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Процедуры и функции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Общие сведения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Принцип локализации имен . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Формальные и фактические параметры . . . . . . . . . . . . . . . . . . . . . 187
Указатели и динамически выделяемая память . . . . . . . . . . . . . . . . . . . 190
Общие сведения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Указатели и запрос на выделение памяти . . . . . . . . . . . . . . . . . . . 192
Механизм выделения и освобождения динамической памяти . . 194
Модули. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Стандартные модули Турбо Паскаля. . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Модуль консоли crt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Константы, типы и переменные модуля crt . . . . . . . . . . . . . . . . . . 203
Работа со звуком . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Модуль графики graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Инициализация графического режима. Основные процедуры . 214
Работа с указателем («графическим курсором») . . . . . . . . . . . . . 217
Цветовая палитра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Закрашивание поверхностей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Вывод текста в графическом режиме . . . . . . . . . . . . . . . . . . . . . . . 221
Построение фигур. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Шрифты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Стили линий. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Создание анимаций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Математическое моделирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Численные методы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Тексты программ для самостоятельного анализа . . . . . . . . . . . . . . . . . 238
Приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Приложение 1. Среда программирования QBasic. . . . . . . . . . . . . . . . . . 251
Главное меню QBasic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Меню Файл. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Меню Редактирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Меню Просмотр. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Меню Поиск . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Меню Запуск . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Меню Отладка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Меню Параметры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Меню Справка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
Интерактивное оглавление
vii
Приложение 2. Краткая справка по языку Турбо Паскаль . . . . . . . . 261
Структура программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Структура модуля. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Операторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Операции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Некоторые процедуры и функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Приложение 3. Интегрированная среда Турбо Паскаль . . . . . . . . . . . 269
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Главное меню IDE Turbo Pascal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Пункт меню File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Пункт меню Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Меню Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Меню Compile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Приложение 4. Таблица кодов ANSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Приложение 5. Таблица кодов ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Приложение 6. Краткий англо-русский словарь программиста . . . . 278
Литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
Содержание
Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Технологии программирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Алгоритмическая (процедурноориентированная)
технология программирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Объектноориентированная технология
программирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Логическая технология программирования . . . . . . . . . . . . . . . . . . . . . . . 20
Обзор современных технологий программирования . . . . . . . . . . . . . . . . 22
Этапы решения задач на компьютере . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Основы программирования
на языке Бейсик . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Основные сведения о языке Бейсик . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Выражения в Бейсике . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Программирование на Бейсике: начальный курс . . . . . . . . . . . . . . . . . . . 42
Оператор присваивания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Оператор ввода данных INPUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Оператор записи данных DATA и оператор чтения
данных READ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Оператор RESTORE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Оператор PRINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Оператор LPRINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Оператор REM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Оператор STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Оператор END . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Примеры простейших программ на Бейсике . . . . . . . . . . . . . . . . . . . . . . . 49
Управление порядком выполнения программ на языке Бейсик . . . . . . 53
Оператор безусловного перехода GOTO. . . . . . . . . . . . . . . . . . . . . . . . . . 54
Оператор условного перехода (условный оператор)
IF...THEN...ELSE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Логические выражения в операторе IF. . . . . . . . . . . . . . . . . . . . . . . . . 57
Оператор ON...GOTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Оператор SELECT CASE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
Содержание
285
Операторы для организации цикла . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Цикл с фиксированным количеством повторений
FOR...NEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Цикл с неопределенным количеством повторений
WHILE...WEND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Оператор DO...LOOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Основные графические возможности Бейсика . . . . . . . . . . . . . . . . . . . . . 70
Общие замечания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Рисование точек — операторы PSET и PRSET . . . . . . . . . . . . . . . . . . . . 72
Рисование линий. Оператор LINE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Рисование прямоугольников . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Рисование окружностей, эллипсов и дуг . . . . . . . . . . . . . . . . . . . . . . . 74
Оператор PAINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Оператор DRAW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Основы модульного программирования. Подпрограммы . . . . . . . . . . . . 79
Классификация подпрограмм. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Процедуры — оператор SUB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Функции, определяемые пользователем . . . . . . . . . . . . . . . . . . . . . . . 82
Подпрограмма SUBROUTINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Функция DEF FN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Работа с файлами. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Примеры типовых программ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Основы программирования на языке Паскаль. . . . . . . . . . . . . . . . . . . . . . . 106
Основные сведения о языке Паскаль . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Алфавит языка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Идентификаторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Константы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Порядковые типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Целые типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Встроенные функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Вещественные типы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Символьный тип данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Логические типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Внутреннее представление чисел
в памяти компьютера . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Программирование на Паскале: начальный курс . . . . . . . . . . . . . . . . . . 117
Выражения и операции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Структура программы на Паскале . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Основные операторы Паскаля . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Оператор безусловного перехода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Составной оператор. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
286
Содержание
Условный оператор. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Оператор выбора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Массивы и их обработка. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Назначение, виды и описание массивов . . . . . . . . . . . . . . . . . . . . . . . 131
Сортировка массива . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Примеры типовых программ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Циклы с неопределенным количеством повторений . . . . . . . . . . . . 141
Обработка данных строкового типа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Примеры типовых программ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Множества . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Записи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Текстовые файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Типизированные файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Нетипизированные файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Процедуры и функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Принцип локализации имен . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Формальные и фактические параметры . . . . . . . . . . . . . . . . . . . . . . . 187
Указатели и динамически выделяемая память . . . . . . . . . . . . . . . . . . . . 190
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Указатели и запрос на выделение памяти . . . . . . . . . . . . . . . . . . . . . 192
Механизм выделения и освобождения
динамической памяти. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Модули . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Стандартные модули Турбо Паскаля. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Модуль консоли crt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Константы, типы и переменные модуля crt . . . . . . . . . . . . . . . . . . . 203
Работа со звуком . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Модуль графики graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Инициализация графического режима. Основные процедуры . . . 214
Работа с указателем («графическим курсором»). . . . . . . . . . . . . . . . 217
Цветовая палитра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Закрашивание поверхностей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Вывод текста в графическом режиме . . . . . . . . . . . . . . . . . . . . . . . . . 221
Построение фигур . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Шрифты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Стили линий. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Создание анимаций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Перейти на страницу с полной версией»
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Перейти на страницу с полной версией»
Содержание
287
Математическое моделирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Численные методы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Тексты программ для самостоятельного анализа . . . . . . . . . . . . . . . . . . 238
Приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Приложение 1. Среда программирования QBasic . . . . . . . . . . . . . . . . . . . . 251
Главное меню QBasic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Меню Файл . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Меню Редактирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Меню Просмотр . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Меню Поиск . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Меню Запуск . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Меню Отладка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Меню Параметры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Меню Справка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Приложение 2. Краткая справка по языку Турбо Паскаль . . . . . . . . . . . . 261
Структура программы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Структура модуля . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Операторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Операции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Некоторые процедуры и функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Приложение 3. Интегрированная среда Турбо Паскаль . . . . . . . . . . . . . . . 269
Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Главное меню IDE Turbo Pascal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Пункт меню File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Пункт меню Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Меню Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Меню Compile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Приложение 4. Таблица кодов ANSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Приложение 5. Таблица кодов ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Приложение 6. Краткий англорусский словарь программиста . . . . . . . . 278
Литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Перейти на страницу с полной версией»
Download