УДК 681.3
Сидоров М.Е., Трушин О.В.
Школа работы на IBM PC. Часть 2. Уфа, 1996.
Алгоритмический язык Турбо-Паскаль +
Программирование в среде Турбо-Паскаль
ISBN
Книга написана для начинающих программистов: учащихся старших
классов, студентов. Для освоения изложенного материала необходимо
наличие компьютера IBM PC, пакета Turbo-Pascal 7.0, и выполнение
описанных в книге заданий непосредственно при чтении.
Цель этой книги - "плавное" вхождение в область программирования
с постепенным усложнением заданий и алгоритмов. Первые задания
имеют программы -"шаблоны", позволяющие начинающим программистам
преодолеть психологический барьер изложения мыслей на
алгоритмическом языке. Последующие задания имеют блоки
операторов, поясняющие "изюминку" программы, которые следует
модифицировать. Следует изучить приведенные примеры ("шаблоны")
операторов и четко знать для чего служит каждый оператор.
Большинство изложенных заданий являются оригинальными
разработками авторов, особенно по модулям CRT и GRAPH.
Приводятся также "стандартные" и известные интересные программы и
задания.
Краткое изложение материала предполагает наличие "учителя",
могущего прокомментировать "узкие места", привести дополнительные
примеры, задания и контрольные вопросы (в том числе и по
"шаблонам"), способствующие усвоению материала. Авторы не
стремились к полному описанию языка, поэтому некоторые типы
данных, специфические операции и процедуры, не нашедшие
практического приложения, не рассматриваются. Авторы использовали
все свои знания и опыт для создания познавательных практических
заданий, способных вызвать интерес к результатам рутинного
программирования. Освоение изложенного в книге материала позволит
Вам перейти к профессиональному изучению алгоритмического языка
Turbo-Pascal с использованием "толстых" книг, а также
Help-описания.
Программирование в среде FoxPro изложено в виде примеров
программ, позволяющих освоить основные команды и иметь
представление о назначении команд FoxPro. Эта глава предназначена
для студентов университетов.
Авторы выражают благодарность учителям информатики Сидоровой Н.Л.
и Трушиной Д.В. за помощь при подборе и апробации материала для
данной книги.
Разделы 1.15, 2.1.1, 2.1.5, 2.3, 2.5 и глава 3 написаны к.т.н.
Трушиным О.В., разделы 1.1 - 1.14, 2.1 - 2.2 и 2.4 написаны
к.т.н. Сидоровым М.Е.
Общая редакция текста выполнена Сидоровым М.Е.
ОГЛАВЛЕНИЕ
1. Алгоритмический язык Турбо-Паскаль . . . . . . . . . . . . . . 5
1. 1. Общие сведения. . . . . . . . . . . . . . . . . . . . . . . 5
1. 2. Среда Турбо-Паскаль . . . . . . . . . . . . . . . . . . . . 5
1. 3. Структура языка Турбо-Паскаль . . . . . . . . . . . . . . . 8
1. 4. Типы переменных . . . . . . . . . . . . . . . . . . . . . . 9
1. 5. Структура программы . . . . . . . . . . . . . . . . . . . . 13
1. 6. Операции и стандартные функции. . . . . . . . . . . . . . . 14
1. 7. Операторы Турбо-Паскаля . . . . . . . . . . . . . . . . . . 17
1. 7. 1. Операторы ввода/вывода данных. . . . . . . . . . . . . . 17
1. 7. 2. Оператор выбора. . . . . . . . . . . . . . . . . . . . . 21
1. 7. 3. Условный оператор. . . . . . . . . . . . . . . . . . . . 22
1. 7. 4. Оператор цикла с параметром. . . . . . . . . . . . . . . 27
1. 7. 5. Операторы цикла с условием . . . . . . . . . . . . . . . 32
1. 7. 6. Операторы ограничения и прерывания цикла . . . . . . . . 35
1. 7. 7. Оператор перехода к метке. . . . . . . . . . . . . . . . 36
1. 8. Блок - схемы алгоритмов . . . . . . . . . . . . . . . . . . 37
1. 9. Составление диалоговых программ . . . . . . . . . . . . . . 39
1. 10. Массивы. . . . . . . . . . . . . . . . . . . . . . . . . . 40
1. 10. 1. Линейные массивы. . . . . . . . . . . . . . . . . . . . 40
1. 10. 2. Работа со элементами переменной строкового типа . . . . 44
1. 10. 3. Двумерные массивы . . . . . . . . . . . . . . . . . . . 45
1. 10. 4. Создание баз данных с использованием массивов записей . 48
1. 10. 5. Работа с большими массивами . . . . . . . . . . . . . . 49
1. 11. Текстовые файлы. . . . . . . . . . . . . . . . . . . . . . 50
1. 12. Разработка функций и процедур. . . . . . . . . . . . . . . 55
1. 12. 1. Описание функций и процедур . . . . . . . . . . . . . . 55
1. 12. 2. Рекурсивные функции и процедуры . . . . . . . . . . . . 60
1. 13. Разработка модулей . . . . . . . . . . . . . . . . . . . . 64
1. 14. Модуль CRT . . . . . . . . . . . . . . . . . . . . . . . . 67
1. 14. 1. Управление экраном в текстовом режиме . . . . . . . . . 67
1. 14. 2. Управление клавиатурой. . . . . . . . . . . . . . . . . 68
1. 14. 3. Работа с символьными переменными. . . . . . . . . . . . 73
1. 14. 4. Работа со строковыми переменными. . . . . . . . . . . . 76
1. 14. 5. Управление звуковыми сигналами. . . . . . . . . . . . . 77
1. 15. Модуль Graph . . . . . . . . . . . . . . . . . . . . . . . 79
1. 15. 1. Инициализация графического режима . . . . . . . . . . . 79
1. 15. 2. Простейшие графические процедуры и функции. . . . . . . 80
1. 15. 3. Рисование геометрических фигур. . . . . . . . . . . . . 88
1. 15. 3. 1. Построение заполненных фигур . . . . . . . . . . . . 88
1. 15. 3. 2. Работа с линиями . . . . . . . . . . . . . . . . . . 91
1. 15. 3. 3. Создание графических узоров. . . . . . . . . . . . . 94
1. 15. 4. Работа с текстом в графическом режиме . . . . . . . . .102
1. 15. 5. Мультипликация. . . . . . . . . . . . . . . . . . . . .104
1. 15. 5. 1. Мультипликация с запоминанием части экрана . . . . .104
1. 15. 5. 2. Мультипликация с чередованием видеостраниц . . . . .107
1. 15. 5. 3. Мультипликация с управлением движения образа . . . .108
1. 15. 5. 4. Модификация контурного изображения . . . . . . . . .109
2. Программирование в среде Турбо-Паскаль . . . . . . . . . . . .111
2. 1. Геометрические построения на плоскости. . . . . . . . . . .111
2. 1. 1. Построение графиков функций. . . . . . . . . . . . . . .111
2. 1. 2. Графическое решение уравнений. . . . . . . . . . . . . .118
2. 1. 3. Геометрические построения на плоскости . . . . . . . . .118
2. 1. 4. Построение касательных и нормалей к плоским кривым . . .119
2. 1. 5. Двумерные преобразования координат . . . . . . . . . . .121
2. 1. 6. Проецирование пространственного изображения тела на
плоскость. . . . . . . . . . . . . . . . . . . . . . . .126
2. 2. Некоторые задачи физики . . . . . . . . . . . . . . . . . .128
2. 2. 1. Механика . . . . . . . . . . . . . . . . . . . . . . . .128
2. 2. 2. Оптика и свет. . . . . . . . . . . . . . . . . . . . . .135
2. 2. 3. Электростатика и электромагнетизм. . . . . . . . . . . .138
2. 3. Математическое моделирование физических процессов . . . . .140
2. 4. Моделирование многовариантных задач с использованием
графов. . . . . . . . . . . . . . . . . . . . . . . . . . .147
2. 5. Программы математических расчетов . . . . . . . . . . . . .150
2. 5. 1. Численное решение уравнений. . . . . . . . . . . . . . .150
2. 5. 2. Аппроксимация по методу наименьших квадратов . . . . . .152
2. 5. 3. Численный расчет интегралов. . . . . . . . . . . . . . .153
2. 5. 4. Сортировка одномерных массивов . . . . . . . . . . . . .156
|