использовать Черепаха
алг
нач
вперед (60)
влево (65)
вперед (43)
вправо (20)
вперед (28)
вправо (45)
вправо (90)
вперед (20)
влево (90)
вправо (65)
вперед (27)
вперед (40)
влево (180)
влево (45)
вперед (26)
вперед (45)
влево (155)
вперед (39)
поднять хвост
вперед (100)
опустить хвост
вперед (4)
вперед (6)
кон
Объяснение:
Смотри картинку
Так как язык не указан, приведу пример на SWI-Prolog.
Код:
использовать Черепаха
алг
нач
вперед (60)
влево (65)
вперед (43)
вправо (20)
вперед (28)
вправо (45)
вперед (60)
вправо (90)
вперед (20)
вправо (90)
вперед (60)
влево (90)
вперед (20)
влево (65)
вперед (43)
вправо (65)
вперед (20)
вправо (45)
вперед (27)
вправо (45)
вперед (40)
вправо (45)
вперед (27)
влево (180)
вперед (27)
влево (45)
вперед (40)
вправо (90)
вперед (60)
вправо (45)
вперед (26)
вправо (20)
вперед (45)
влево (180)
вперед (45)
влево (155)
вперед (40)
вправо (45)
вперед (27)
влево (45)
вперед (40)
вправо (90)
вперед (39)
вправо (90)
вперед (40)
влево (90)
вперед (20)
влево (90)
вперед (40)
вправо (90)
вперед (39)
поднять хвост
вправо (90)
вперед (100)
опустить хвост
влево (45)
вперед (4)
влево (90)
вперед (4)
влево (90)
вперед (6)
влево (90)
вперед (4)
поднять хвост
кон
Объяснение:
Смотри картинку
Так как язык не указан, приведу пример на 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).