ОБЩИЕ СВЕДЕНИЯ ОБ ЭВМ............................................ 3
1. Общая функциональная схема эвм.................................. 3
2. Языки программирования............................................. 3
3. Этапы решения задач на эвм......................................... 5
4. Понятие алгоритма и его свойства................................. 5
5. Графическое описание алгоритмов. Схемы алгоритмов..................................................... 7
6. Типы алгоритмов......................................................... 9
7. Ос эвм. Понятие о файловой системе............................ 10
8. Команды ms dos......................................................... 12
ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ПАСКАЛЬ.................. 14
1. Структура программы на языке Паскаль........................ 14
2. Описание данных....................................................... 15
2.1. Константы............................................................................................................. 15
2.2. Переменные.......................................................................................................... 16
3. Комментарии............................................................. 17
4. Операторы языка Паскаль........................................... 17
5. Операторы обработки данных...................................... 17
5.1. Операторы ввода.................................................................................................. 18
5.2. Операторы вывода............................................................................................... 19
5.3. Вычисление по формулам. Оператор присваивания....................................... 20
6. Линейные программы................................................. 21
7. Управляющие операторы............................................. 22
7.1. Разветвляющиеся алгоритмы. Оператор IF (ЕСЛИ)........................................ 22
7.2. Пример разветвляющейся программы............................................................... 24
7.3. Оператор CASE.................................................................................................... 25
8. Циклические алгоритмы и программы........................... 26
8.1. Общая схема цикла.............................................................................................. 26
8.2. Циклы со счетчиком............................................................................................ 28
8.3. Итерационные циклы.......................................................................................... 30
8.3.1. Оператор цикла с пост-условием..................................................... 30
8.3.2. Оператор цикла с пред-условием..................................................... 31
9. Типы данных, используемых в Паскале......................... 35
9.1. Представление данных в ЭВМ........................................................................... 35
9.2. Стандартные функции Паскаля и Турбо Паскаля............................................ 36
9.3. Булевские переменные и выражения................................................................ 36
9.4. Функции для работы с символами..................................................................... 37
9.5. Массивы................................................................................................................ 38
10. Примеры программ обработки массивов...................... 41
11. Особенности алгоритмов и программ с накапливанием..................................................... 43
12. Алгоритм нахождения минимума и максимума............................................. 44
13. Задача сортировки.................................................... 45
14. Обработка многомерных массивов.............................. 49
15. Программы обработки строк символов (текстов)................................................................ 53
15.1. Простейшие алгоритмы и программы обработки строк............................... 53
15.2. Анализ символов в строке................................................................................ 55
16. Типовые программы обработки строк.......................... 62
16.1. Выделение слов из текста (слова разделены одним пробелом).................... 63
16.2. Выделение слов из текста (слова разделены несколькими пробелами)..... 64
16.3. Некоторые типовые алгоритмы и программы обработки массивов строк (слов из текстов)..................................................................... 66
17. Алгоритмы поиска.................................................... 70
17.1. Алгоритм линейного поиска............................................................................ 70
17.2. Алгоритм дихотомического поиска................................................................ 73
18.процедуры, функции и модули в Паскале...................... 76
18.1. Процедуры.......................................................................................................... 76
18.1.1. Пример программы с процедурой................................................. 81
18.1.2. Расположение процедур в программе........................................... 82
18.2. Функции............................................................................................................. 83
18.2.1. Пример программы с функцией..................................................... 85
18.3. Внешние процедуры и функции...................................................................... 86
18.3.1. Модули пользователей.................................................................... 86
19. Итерационные циклы................................................ 89
19.1. Приближенное вычисление функций............................................................. 89
19.2. Решение уравнений приближенными методами........................................... 91
19.2.1. Метод деления отрезка пополам.................................................... 92
19.2.2. Метод Ньютона................................................................................ 93
19.2.3. Метод прохождения отрезка с переменным шагом..................... 95
19.3. Вычисление определенных интегралов.......................................................... 97
19.3.1. Метод прямоугольников................................................................. 98
19.3.2. Метод трапеций............................................................................... 99
20. Дополнительные сведения о типах данных, применяемых в Паскале........................................... 100
20.1. Перечисляемый тип......................................................................................... 100
20.2. Интервальный тип........................................................................................... 103
20.3. Множества........................................................................................................ 104
20.3.1. Примеры программ с использованием множеств...................... 106
20.4. Записи............................................................................................................... 110
20.4.1. Примеры программ обработки записей...................................... 111
21. Файлы и наборы данных.......................................... 115
21.1. Текстовые файлы............................................................................................. 117
21.1.1. Создание текстового файла.......................................................... 118
21.1.2. Работа с существующим текстовым файлом.............................. 119
21.2. Типизированные файлы.................................................................................. 120
21.2.1. Последовательная обработка типизированных файлов............ 121
21.2.2. Использование прямого доступа к записям типизированного файла.............................................. 124
21.2.3. Упорядочение записей в файле.................................................... 129
21.2.4. Удаление записей из файла........................................................... 131
21.2.5. Вставка записей в файл................................................................. 134
22. Динамическое распределение памяти. Указатели и списки................................................ 135
22.1. Использование указателей. Списки............................................................... 138
22.2. Очереди............................................................................................................. 141
22.2.1. Очередь типа LIFO........................................................................ 141
22.2.2. Очередь FIFO................................................................................. 143
23. Стандартные модули турбо Паскаля.......................... 145
23.1. Модуль Crt........................................................................................................ 146
23.1.1. Работа с клавиатурой и звуком.................................................... 146
23.1.2. Управление цветом........................................................................ 148
23.1.3. Создание окон и позиционирование курсора............................ 149
23.1.4. Построение графика в текстовом режиме................................... 151
23.1.5. Алгоритм и программа представления меню средствами Турбо Паскаля............................................................ 155
23.2. Модуль DOS..................................................................................................... 158
23.3. Модуль Graph................................................................................................... 158
23.3.1. Инициирование графического режима....................................... 159
23.3.2. Вывод точек на экран.................................................................... 160
23.3.3. Вывод текста (надписей) в графическом режиме...................... 162
23.3.4. Построение графических изображений...................................... 164
23.3.5. Запоминание и вывод изображений............................................ 169
24. Рекомендации по оформлению текста программ..................................................... 176
Библиографический список........................................... 179
ВВЕДЕНИЕ
Данные методические указания к лабораторным работам являются первой частью по курсу "Основы алгоритмизации и программирование". Они имеют цель дать обучающимся основные навыки по поэтапному решению задач на ЭВМ с использованием инструментальной системы программирования: составление алгоритма, составление программы, ввод и отладка программы с получением конечного результата.
При выполнении лабораторных работ используется язык программирования Турбо Паскаль, поэтому предусмотрено и знакомство с интегрированной инструментальной оболочкой, в частности с редактором текста и командами самой оболочки.
В качестве аппаратного средства для практического освоения программирования с использованием интегрированной инструментальной оболочки предусматривается работа на наиболее распространенных в настоящее время IBM-совместимых персональных компьютерах.
Методические указания предназначены для студентов факультета автоматизации и вычислительной техники, и могут быть использованы студентами других специальностей для выполнения лабораторных работ по курсу "Основы алгоритмизации и программирование".