
Задание: Роботу необходимо определить максимальный уровень радиоактивного заражения в коридоре,
закрасить клетки с данным уровнем заражения. Так же необходимо напечатать этот уровень и количество данных клеток. Написать программу в кумире

Ответы на вопрос

Вот такая программа для горизонтального коридора в одну клетку шириной и для начального положения робота в левом конце коридора.
Если радиации в коридоре не найдено, программа выводит об этом сообщение (без вывода цифровой статистики при этом).
использовать Робот
алг
нач
вещ макс=0 | максимальный найденный уровень радиации
цел счёт=0 | число наиболее заражённых клеток
нц
если радиация>макс то макс:=радиация все
если справа свободно то вправо иначе выход все
кц
если макс=0 то вывод 'радиации в коридоре нет'; выход все
нц
если радиация=макс то закрасить; счёт:=счёт+1 все
если слева свободно то влево иначе выход все
кц
вывод 'макс.уровень радиации= ',макс,нс
вывод 'клеток с таким уровнем= ',счёт
кон





Для написания программы в Кумире, которая определит максимальный уровень радиоактивного заражения в коридоре и закрасит соответствующие клетки, следуйте инструкциям ниже:
- Откройте Кумир и создайте новый проект.
- Назовите проект и сохраните его.
- В окне редактора напишите следующий код:
pascalPROCEDURE FindAndColorMaxRadiation; VAR corridor : ARRAY [1..10] OF INTEGER; { Предполагаем, что у нас 10 клеток в коридоре } i, maxRadiation, count : INTEGER; BEGIN { Ввод данных о радиоактивном заражении в каждой клетке } FOR i := 1 TO 10 DO BEGIN WRITELN('Введите уровень радиоактивного заражения в клетке ', i, ': '); READLN(corridor[i]); END; { Находим максимальный уровень радиоактивного заражения } maxRadiation := corridor[1]; FOR i := 2 TO 10 DO BEGIN IF corridor[i] > maxRadiation THEN maxRadiation := corridor[i]; END; { Закрашиваем клетки с максимальным уровнем радиоактивного заражения } count := 0; FOR i := 1 TO 10 DO BEGIN IF corridor[i] = maxRadiation THEN BEGIN WRITELN('Клетка ', i, ' имеет максимальный уровень радиоактивного заражения.'); count := count + 1; END; END; WRITELN('Максимальный уровень радиоактивного заражения: ', maxRadiation); WRITELN('Количество клеток с максимальным уровнем заражения: ', count); END; BEGIN FindAndColorMaxRadiation; END.
- Сохраните и скомпилируйте программу.
- Запустите программу и введите уровни радиоактивного заражения в каждой из 10 клеток.
- Программа выведет информацию о максимальном уровне радиоактивного заражения и количество клеток с таким уровнем.
Обратите внимание, что в коде я предположил, что у нас 10 клеток в коридоре. Если у вас иное количество клеток, пожалуйста, измените значение размерности массива corridor
и укажите соответствующее количество клеток при вводе данных.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili