← Все вопросы
Как нарисовать блок-схему для задачи «найти максимум из трёх чисел»?
6
Задали нарисовать блок-схему алгоритма поиска максимума из трёх введённых чисел a, b, c. Я понимаю код с if'ами, но не соображу, как разложить это на ромбы и стрелки. С чего начать и сколько ромбов нужно?
1 ответ
11
✓ Принятый ответ — помог автору
Удобнее всего схема в стиле «храним текущий максимум». Тогда хватит двух ромбов.
Логика по шагам (так и рисуй сверху вниз):
- Овал «Начало».
- Параллелограмм: ввод a, b, c.
- Прямоугольник:
m = a(считаем, что максимум — первое число). - Ромб:
b > m?→ если «да», стрелка в прямоугольникm = b, если «нет» — мимо. - Ромб:
c > m?→ если «да», прямоугольникm = c, если «нет» — мимо. - Параллелограмм: вывод m.
- Овал «Конец».
То есть мы кладём в m первое число, а потом два раза проверяем: не больше ли следующее. Соответствующий код:
a, b, c = map(int, input().split())
m = a
if b > m: m = b
if c > m: m = c
print(m)
Такая схема проще, чем сравнивать все три попарно — ромбов меньше и логика линейнее.
Ваш ответ
Войдите, чтобы ответить на вопрос.