Разветвленные алгоритмы

Разветвленные алгоритмыв своем составе содержат блок условия

и различные конструкции ветвления. Ветвление– это структура,

обеспечивающая выбор между альтернативами.

Каждая управляющая структура ветвления имеет один вход и один

выход. Ветвления содержат блок условия, в котором записывают

логические условия, такие как А > С, X <= Y. В зависимости от значений

переменных А, С в управляющей структуре ветвления на рис. 4, условие

А > С принимает значение «истина» или «ложь» и процесс вычислений

включает блок действия Z = A или Z = C. Аналогично происходит и в

управляющей структуре неполного ветвления (рис. 4, б). Только в этом

случае, если условие X <= Y истинно, то выполняется действие С = Х, в

противном случае никаких действий не выполняется.

Разветвленные алгоритмы - student2.ru

В управляющей структуре многоальтернативный выбор (рис. 4, в) в

блоке условия записывается переменная, в данном случае Х, которая

может принимать различные значения. Если значение переменной Х

совпадет с одним из значений в блоке действия, то выполняются действия,

записанные в этом блоке. Например, если Х = 1, то выполнится действие

Y = 1. Если значение Х не совпало ни с одним из значений, указанных в

блоках справа, то выполняется действие в блоке слева, которого также, как

и в неполном ветвлении, может и не быть.

Пример 2. Составить алгоритм нахождения минимального значения из 3 чисел.

Решение. Для определения минимального значения будем использовать

проверку пары значений. Визуальные разветвленные алгоритмы приведены на рис. 5,6, 7. Эти алгоритмы используют для обозначения чисел переменные А, В, С и различные подходы для анализа исходных данных.

Разветвленные алгоритмы - student2.ru

Разветвленные алгоритмы - student2.ru

Пример 3. Составить алгоритм определения: находится ли точка М с

координатами Х, Y на окружности радиуса R.

Решение. Визуальный алгоритм приведен на рис. 8. Для решения в нем

используется математическая модель в виде формулы окружности

R2 = X2+Y2.

Разветвленные алгоритмы - student2.ru

Пример 4. Составить алгоритм определения корней уравнения X2+B*X+C=0.

Решение. При составлении этого алгоритма надо рассмотреть случаи, когда

уравнение не имеет корней и когда имеется только один корень. Обозначим корни

уравнения через переменные Х1, Х2.

D – промежуточная переменная для вычисления дискриминанта.

Алгоритм вычисления корней уравнения заданного вида приведен на рис. 9.

Разветвленные алгоритмы - student2.ru

Задания для самостоятельного выполнения

Цель заданий. Приобрести умения в синтезе формальной и

алгоритмической моделей решения задач. Сформировать компетенции

анализа и синтеза алгоритмических моделей при решении простых задач.

Порядок выполнения.Составить формальные и алгоритмические

модели решения следующих задач:

1. В книжном магазине вы желаете купить три книги. У вас имеется

небольшая сумма наличных денег и пластиковая карта, на счету которой

большая сумма денег. Вам бы не хотелось сегодня пользоваться

пластиковой картой, так как Вы в дальнейшем запланировали крупную

покупку. Определите способ покупки.

2. Определите вариант пути от дома до места учебы, в зависимости от

времени выхода из дома и времени начала учебных занятий.

3. В избирательной компании в органы власти участвуют две партии:

зеленых и прозрачных. Какая информация будет опубликована в СМИ по

итогам голосования?

4. Для двух чисел Х, Y определить, являются ли они корнями уравнения

А*Р4+D*P2+C=0.

5. Определить, является ли точка с координатами X, Y точкой пересечения

диагоналей квадрата со стороной R, одна вершина которого расположена в

начале координат.

6. Определить значения функции в зависимости от значения аргумента

Разветвленные алгоритмы - student2.ru

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

1. Что называют алгоритмом?

2. Определите понятие «исполнитель алгоритмов».

3. Каковы особенности алгоритмов?

4. Перечислите свойства алгоритмов.

5. Каким образом используются алгоритмы при решении задач?

6. Для чего применяют алгоритмы?

7. Укажите способы задания алгоритмов и их соотношения.

8. Каковы средства и основные блоки визуального представления алгоритмов?

9. Сформулируйте общие правила при проектировании визуальных

алгоритмов.

10. Как используется системный подход к построению алгоритмов?

11. В чем заключается метод структурной алгоритмизации?

12. Какие существуют базовые алгоритмические структуры? Приведите

пример.

13. Чем отличаются алгоритмические структуры композиция и альтернатива?

14. Чем отличаются алгоритмические структуры альтернатива и итерация?

15. Как классифицируются алгоритмы по структурному признаку?

16. Приведите примеры линейных и разветвленных алгоритмов.

Наши рекомендации