Начало » Конспекты школьника » kumir » Осторожно! Высокая радиация
Осторожно! Высокая радиация
Усложним задачу, пусть Робот закрасить только те клетки где радиация
максимальна.
Решать задачу будем в два этапа (подумайте и ответе почему?):
1) найдем максимальный уровень радиации, двигаясь в одно строну;
2) закрасить клетки уровнем радиации равным этому значению, двигаясь в
обратную сторону.
Хранить, найденное максимальное значение радиации будем в переменной макс. Т.к. минимальное значение
радиации в коридоре равно нулю и известно, что есть зараженные участки, то
вначале зададим этой переменной значение ноль. На рисунке клетки с
максимальной радиацией помечены двумя звездочками.
использовать Робот
алг пример
нач
. вещ макс
. макс := 0
. вправо
. нц пока снизу стена
. . если радиация>макс
. . . то макс := радиация
. . все
. . вправо
. кц
. влево
. нц пока снизу стена
. . если радиация = макс
. . . то закрасить
. . все
. . влево
. кц
кон
Идя вправо, проверяем чему равна радиация в клетке, если это значение
больше чем мы храним в переменной макс, то присвоим этой переменной новое
значение, разное значению в этой клетке. Таким образом, пройдя весь
коридор в переменной макс будет храниться значение равное максимальной
радиации в коридоре. Естественно, называть переменню макс было не
обязательно, имя переменной не влияет на работу алгоритма.
Двигаясь затем влево, если радиация в клетке равна значению в макс, то
эту клетку закрасим. Таким образом, мы закрасим все клетки в которых
радиация максимальна.
Задание: Роботу необходимо определить максимальный уровень радиоактивного
заражения в коридоре, закрасить клетки с данным уровнем заражения. Так же
необходимо напечатать этот уровень и количество данных клеток.
Оглавление
|