15.1 На бесконечном поле имеются две перпендикулярные друг другу

стены, расположенные в виде буквы «Т», длины стен неизвестны.

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

горизонтальной стеной. На рисунке указан один из возможных расположения стен и Робота (Робот обозначен буквой «Р»).

Напишите для Робота алгоритм, закрашивающий все клетки,

расположенные непосредственно с правой стороны вертикальной

стены. Робот должен закрасить только клетки, удовлетворяющие

данному условию. Например, для приведённого справа рисунка Робот

должен закрасить следующие клетки (см. рисунок).

При исполнении алгоритма Робот не должен разрушиться, выполнение

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

быть произвольным. Алгоритм должен решать задачу для любого

допустимого расположения стен и любого расположения и размера

прохода внутри стены. Алгоритм может быть выполнен в среде

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

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

чисел, кратных 3 и оканчивающихся на 9. Программа получает на вход натуральные числа, количество

введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания

ввода, не входит в последовательность). Количество чисел не превышает 100. Введённые числа не

превышают 300. Программа должна вывести одно число: сумму всех чисел, кратных 3 и

оканчивающихся на 9.

Пример работы программы:

Входные данные Выходные данные

16

29

56

9

39

0

48​

tumanovamariam tumanovamariam    1   16.05.2020 13:44    47

Ответы
daviddavidbelovbelov daviddavidbelovbelov  24.01.2024 17:41
Хорошо, давайте начнем с первого вопроса.

15.1 Алгоритм для закрашивания клеток с правой стороны вертикальной стены:
1. Перейдите на клетку справа от текущей позиции Робота.
2. Если клетка уже закрашена, перейдите на следующую свободную клетку справа.
3. Если клетка не закрашена, закрасьте ее.
4. Повторяйте шаги 1-3 до тех пор, пока не достигнете правого края стены.

Обоснование:
- Шаг 1 перемещает Робота на соседнюю клетку справа от текущей позиции, чтобы проверить, нужно ли закрашивать эту клетку.
- Шаг 2 проверяет, закрашена ли уже клетка. Если да, Робот переходит на следующую свободную клетку справа.
- Шаг 3 закрашивает клетку, если она еще не закрашена.
- Шаг 4 позволяет Роботу продолжать движение вправо до тех пор, пока он не достигнет правого края стены.

Теперь перейдем ко второму вопросу.

15.2 Программа для определения суммы чисел, кратных 3 и оканчивающихся на 9:
1. Создайте переменную sum и присвойте ей значение 0.
2. Введите число num.
3. Проверьте, является ли число num числом 0. Если да, перейдите к шагу 6.
4. Проверьте, является ли число num кратным 3 и оканчивающимся на 9. Если да, добавьте его значение к переменной sum.
5. Перейдите к шагу 2.
6. Выведите значение переменной sum.

Обоснование:
- Шаг 1 создает переменную sum, которая будет использоваться для хранения суммы чисел.
- Шаг 2 позволяет пользователю ввести число.
- Шаг 3 проверяет, является ли число 0. Если это так, программа переходит к шагу 6, чтобы закончить выполнение.
- Шаг 4 проверяет, удовлетворяет ли число num условиям (кратно 3 и оканчивается на 9). Если это так, число добавляется к переменной sum.
- Шаг 5 переходит обратно к шагу 2, чтобы пользователь мог ввести следующее число.
- Шаг 6 выводит окончательную сумму всех чисел, удовлетворяющих условиям.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика