Форум сайта python.su
Спасибо за обратную связь, я сделал счётчиками действительно потому, что не нашёл другого удобного способа
но хотелось бы пояснить свой тезисы, ты пишешь:
py.user.next
Оно здесь есть, только ты его не видишь,
шагнуть вправо
шагнуть вниз
конец цикла
Офлайн
VangeliНу, там ещё один выход и цикла есть.
но тем ни менее твой код заканчивается так:шагнуть вправо
шагнуть вниз
конец цикла
цикл выполнять
шагнуть вниз
если снизу_нет_стены то
шагнуть вверх
иначе
шагнуть вверх
выход из цикла
конец если
>>> from pyrob.api import * >>> >>> >>> @task(delay=0.05) ... def task_4_3(): ... move_right() ... while True: ... move_down() ... if not wall_is_beneath(): ... move_up() ... else: ... move_up() ... break ... while not wall_is_on_the_right(): ... fill_cell() ... move_right() ... while not wall_is_on_the_left(): ... move_left() ... move_right() ... move_down() ... ... >>> if __name__ == '__main__': ... run_tasks() ... INFO:pyrob:Starting task task_4_3 INFO:pyrob:Task task_4_3 finished: + INFO:pyrob:Total: 1/1 True >>>
VangeliА с чего ты взял-то, что там должна быть точка выхода? Там же человек придумывал эту задачу, и он её специально придумал так, чтобы точкой выхода были два последних ряда незакрашенных во всём поле. Дело в том, что клетки, которые нужно закрасить, никак не определяются исполнителем, такой операции у него нет “проверь, является ли клетка необходимой для закрашивания”. Он может только проверить ещё не закрашенную клетку и уже закрашенную клетку. Поэтому никакого другого способа, кроме как по наличию стены, определить конец закрашивания невозможно. Подумай сам: как ты без участия нижней стены определишь там конец закрашенного блока? Никак.
И когда я писал, что не смог найти закономерность для масштабирования, то это было только о том, что не смог в изначальный скрипт, ровно как и в твоём коде, заложить точку выхода. У нас обоих так или иначе делается дополнительное действие после основного алгоритма
Отредактировано py.user.next (Апрель 7, 2023 23:13:27)
Офлайн
This graphic artist “Robot” is such a creative concept! I love how it combines technology with art. It's amazing to see how Python can be used to bring ideas like this to life. Can't wait to explore more about creating graphics and animations using code! Anyone have tips for beginners?
____ _________________________
Офлайн