Фрагмент алгоритма изображен в виде блок-схемы. Определить значение. Должно получится 32

0 голосов
143 просмотров

Фрагмент алгоритма изображен в виде блок-схемы. Определить значение. Должно получится 32


image

Информатика (15 баллов) | 143 просмотров
0

B>2 слева не должно быть написано "да", а справа "нет"?

Дано ответов: 2
0 голосов
Правильный ответ

Рассмотрим предложенную блок-схему.
В ней четко выделяются два цикла - внешний, с выходом по условию A≤3 и внутренний, с выходом по неизвестному условию.
Во внутренний цикл мы всегда входим со значением В=4. Проверяем условие B>2 и либо входим в тело цикла, где уменьшаем В на 1, либо выходим из цикла, уменьшая А на 1.
При исходном В=4 в тело цикла можно попасть только если значение B>2 истинно, т.е. если слева стоит "Да", а справа - "Нет", тогда при выходе из цикла значение B=2. Если же предположить, что слева стоит "Нет", а справа "Да", то цикл никогда выполняться не будет, а значение B не изменится и останется B=4. Итак, либо B=4, либо В=2.
Теперь обратим внимание на внешний цикл.
При входе в него А=5, в выход осуществляется при А≤3. У нас имеется только один оператор, уменьшающий А на единицу, поэтому выход из цикла произойдет при А=3.

Значение М=10хА+В. Мы знаем, что А=3, поэтому М=30+В
Насчет В мы установили, что его значение может быть или 2, или 4. Если предположить, что алгоритм составлен разумно, то внутренний цикл должен выполниться хотя бы один раз, в противном случае его можно просто исключить. Тогда слева от условия B>2 должно быть указано "Да", а справа - "Нет" и на выходе В=2, а М=30+2=32. Если же предположить, что внутренний цикл нарисован лишь для того, чтобы запутать задачу, то М=34.
Разумный ответ: 32

(142k баллов)
0 голосов
Если B>2 слева должно быть написано "да", а справа "нет", то получается вот такой ответ: Смотри во вложении.
Ответ: M=32


image
(3.7k баллов)