Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по ospk-1_v21.doc
Скачиваний:
25
Добавлен:
08.11.2019
Размер:
5.82 Mб
Скачать

Лабораторная работа № 7 Тема: «Исследование разветвляющихся алгоритмов»

Цель работы – изучить принцип построения разветвляющихся алгоритмов.

Теоретические сведения

7.1 Разветвляющийся вычислительный процесс

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

Разветвляющийся процесс, включающий в себя две ветви, называется простым, более двух ветвей – сложным. Сложный разветвляющийся процесс можно представить с помощью комбинации простых разветвляющихся процессов. Направление ветвления выбирается логической проверкой, в результате которой возможны два ответа: «да» («+») – условие выполнено и «нет» («–») – условие не выполнено.

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

Разветвляющийся процесс может быть представлен в виде полной (рис.7.1а) и неполной формы (рис.7.1б).

а) б)

Рисунок 7.1 – Полная (а) и неполная (б) формы представления алгоритма ветвления

Пример 7.1. Выполнить алгоритм вычисления выражения:

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

7.2 Переключательные алгоритмические процессы

Среди разветвляющихся алгоритмических процессов в отдельную группу можно выделить переключательные. Переключательные алгоритмические процессы позволяют выбрать один вариант из нескольких возможных вариантов. Их можно представить с помощью простых разветвляющихся процессов, но можно и с помощью структуры «Выбор».

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

а) б)

Рисунок 7.2 – Примеры выполнения разветвляющегося алгоритма (а) и структуру выбора (б)

Индивидуальные задания

  1. Составьте алгоритм, проверяющий, верно ли утверждение, что введенное вами целое число является четным.

  2. Составьте алгоритм, проверяющий, верно ли утверждение, что введенное вами целое число делится без остатка на 3.

  3. Составьте алгоритм, проверяющий, верно ли утверждение, что сумма цифр введенного вами целого числа является четным.

  4. Составьте алгоритм, проверяющий, верно ли утверждение, что сумма цифр введенного вами целого числа делится на 5.

  5. Составьте алгоритм, определяющий, пройдет ли график функции y = 5x2 – 7 x + 2 через заданную точку с координатами (a, b).

  6. Составьте алгоритм, определяющий большее из трех действительных чисел a, b, c.

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

  8. Стороны одного прямоугольника равны A и B. Стороны другого равны X и Y. Написать алгоритм проверки прямоугольников на равенство.

  9. Цилиндрическая деталь должна иметь длину LO и диаметр DO. Допуски равны соответственно XL и XD. Определить, удовлетворяет ли норме изготовленная деталь.

  10. Стороны одного треугольника равны A1,B1,C1. Написать алгоритм проверки равенства ему другого треугольника А2,В2,С3.

  11. Нормальный пульс человека 60 ударов в минуту, давление 120 на 80. При отборе в школу космонавтов допуск по пульсу равен –1, +3; допуск по нижнему значению давления 3, по верхнему - +5. Определить, пройдет ли медкомиссию данный претендент.

  12. Составить алгоритм, проверяющий вхождение данных А и В в диапазон CD.

Контрольные вопросы

1) Дайте определение алгоритма ветвления.

2) Какие виды алгоритмов ветвления существуют?

3) Какие блочные символы используются при описании алгоритмов ветвления?

4) Что такое переключательные алгоритмические процессы?

5) Приведите пример построения переключательного алгоритмического процесса.

6) Укажите правила построения алгоритмов ветвления.