- •Введение
- •1 Цели и задачи дисциплины
- •2 Методы и технологии разработки алгоритмов и программ
- •2.1 Сущность структурного программирования
- •2.1.1 Базовые управляющие структуры
- •2.1.2 Дополнительные управляющие структуры
- •2.2 Сущность процедурного программирования
- •2.3 Сущность модульного программирования
- •2.4 Сущность объектно-ориентированного программирования
- •3 Методические указания к выполнению лабораторных работ
- •Лабораторная работа №1 Работа с файлами в интегрированной среде программирования
- •Лабораторная работа №2 Отладка и тестирование программы
- •Текст программы
- •Лабораторная работа №3 Поразрядные логические операции
- •Варианты индивидуальных заданий
- •Пример решения для варианта задания вида:
- •Пример программы
- •Лабораторная работа №4 Поиск экстремума
- •Варианты индивидуальных заданий
- •Пример схемы алгоритма и текста программы определения экстремума для варианта задания вида:
- •Пример программы
- •Лабораторная работа №5 Определение принадлежности точки выделенным областям на плоскости
- •Варианты индивидуальных заданий
- •Пример схемы алгоритма и текст программы определения местоположения точки на плоскости для варианта задания вида:
- •Текст программы
- •Лабораторная работа №6 Многовариантные вычисления по ключу
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №7 Циклические вычисления на заданное число повторений.
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №8 Циклические вычисления с заданной точностью
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №9 Обработка одномерных массивов
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №10 Обработка двумерных массивов
- •Варианты индивидуальных заданий
- •Пример программы
- •4 Методические указания к выполнению контрольных работ
- •Контрольная работа №1 Преобразование чисел из одной системы счисления в другие
- •Варианты индивидуальных заданий
- •Пример выполнения задания
- •Контрольная работа №2 Арифметические операции в двоичной, восьмеричной и шестнадцатеричной системах счисления
- •Варианты индивидуальных заданий
- •Пример выполнения задания
- •Библиографический список
2.1.2 Дополнительные управляющие структуры
Управляющая структура Обход предполагает выполнение или невыполнение (обход) некоторого действия в вычислительном процессе в зависимости от выполнения условия и представляет собой алгоритмическую структуру вида:
Вход
условие
нет
да
оператор
Выход
Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:
If условие
Then оператор;
При этом условие – это выражение логического типа, а оператор – любой оператор языка.
Если результат вычисление логического выражения (условия) истина (да), то выполняется оператор, если результат ложь (нет), то оператор пропускается.
Управляющая структура Выбор варианта предполагает выбор одного действия из некоторого непустого множества действий в вычислительном процессе в зависимости от значения заданного ключа выбора и представляет собой алгоритмическую структуру вида:
Вход
ключ выбора
оператор_1
K1
оператор_2
K2
…
оператор_n
Kn
оператор
Выход
Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:
Case ключ выбора Of
K1: оператор_1;
K2: оператор_2;
…
Kn: оператор_n;
[Else оператор;]
End;
При этом ключ выбора
– это выражение любого порядкового
типа,
– константные выражения того же типа,
а оператор_i –
любой оператор языка.
При входе в оператор выбора вычисляется результат выражения ключ выбора, который последовательно сравнивается с результатами константных выражений . Если совпадение значений произошло, то выполняется соответствующий оператор_i, и выполнение оператора выбора заканчивается.
Если сравнение значений не произошло, то выполняется оператор ветки Else (при его наличии), либо выполнение оператора выбора заканчивается.
Управляющая структура Цикл с постусловием предполагает многократное выполнение некоторого действия, после чего проверяется сохранение значения условия, и представляет собой алгоритмическую структуру вида:
Вход
оператор
условие
Выход
Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:
Repeat
оператор
Until условие;
При этом условие – это выражение логического типа, а оператор – любой оператор языка, который в данном случае называется оператором тела цикла.
Поскольку зарезервированные слова Repeat и Until строго ограничивают начало и конец тела цикла, то если тело цикла по схеме алгоритма включает в себя несколько операторов, использование операторных скобок не обязательно, но возможно.
Управляющая структура Цикл с параметром предполагает многократное выполнение некоторого действия с изменением значения параметра цикла от начального значения до конечного с заданным шагом изменения и представляет собой алгоритмическую структуру вида:
Вход
P = Pн (шаг) Pк
оператор
Выход
Реализация этой управляющей структуры на языке Турбо Паскаль имеет вид:
For P := Pн To Pк
Do оператор;
При этом P – параметр цикла любого порядкового типа, Рн – его начальное значение, Рк – его конечное значение, а оператор – любой оператор языка, который в данном случае называется оператором тела цикла.
Количество исполнений оператора тела цикла зависит только от соотношения значений Рн и Рк: значение параметра цикла меняется от начального значения Рн до конечного значения Рк, при этом шаг изменения зависит только от типа параметра цикла: на каждом следующем шаге берётся очередное по порядку значение P из ряда допустимых.
Достоинства структурного программирования:
- уменьшаются затраты времени на отладку программ (до 10 раз);
- повышается надежность разработанных программ;
- обеспечивается наиболее легкая модификация программ;
- упрощается эксплуатация программ.
Недостаток структурного программирования заключается в незначительном увеличении объема программ на величину не более чем 10%.
