Так как язык не указан, приведу пример на SWI-Prolog.
Код:
read_int(Int) :- read(Int), integer(Int).split_int_by_numbers(0, []) :- !.split_int_by_numbers(N, [Number|Ints]) :- Number is mod(N, 10), RestN is div(N, 10), split_int_by_numbers(RestN, Ints).test_to_div(_, []).test_to_div(N, [Number|Ints]) :- mod(N, Number) =:= 0, test_to_div(N, Ints). test(Int) :- split_int_by_numbers(Int, Numbers), test_to_div(Int, Numbers), write(Int), write(" - Yes!"), nl.test(Int) :- write(Int), write(" - No!"), nl.?- read_int(Int), test(Int).у нашего робота тоже есть система команд. сегодня мы рассмотрим простые команды робота. всего их 5:
вверх
вниз
влево
вправо
закрасить
результат выполнения этих команд понятен из их названия:
вверх — переместить робота на одну клетку вверх
вниз — переместить робота на одну клетку вниз
влево — переместить робота на одну клетку влево
вправо — переместить робота на одну клетку вправо
закрасить — закрасить текущую клетку (клетку в которой находится робот).
эти команды можно писать с клавиатуры, а можно использовать горячие клавиши (нажав их команды будут вставляться автоматически):
вверх — escape, up (стрелка вверх)
вниз — escape, down (стрелка вниз)
влево — escape, left (стрелка влево)
вправо — escape, right (стрелка вправо)
закрасить — escape, space (пробел)
если такое окно робота у вас не появилось, то на панели инструментов щелкните «показать окно робота» или в меню робот выберите пункт «показать окно робота«. продолжаем дальше.
теперь мы будем двигаться вниз и закрашивать правую сторону квадрата:
вниз
закрасить
вниз
закрасить
потом пойдем влево, закрашивая нижнюю границу квадрата
влево
закрасить
влево
закрасить
у нас осталась одна незакрашенная клетка. закрасим ее
вверх
закрасить
все готово! в итоге наша программа выглядит так:
использовать робот
алг квадрат
нач
закрасить
вправо
закрасить
вправо
закрасить
вниз
закрасить
вниз
закрасить
влево
закрасить
влево
закрасить
вверх
закрасить
кон
ответ: привет
Объяснение:
Какое задание