Задание
Даже если вы умеете писать циклы и условия, задание нужно выполнить, ограничиваясь тем арсеналом средсв, который сейчас есть у всех: простая арифметика, простые операции со строками, бесконечный цикл и печать.
* помечены необязательные задачи.
Напишите программу, которая рисует две стенки: "| |", и пускает бесконечно бегать от левой к правой шарик в виде буквы "o" (латинской, во избежание головной боли с кодировками). В программе первой строчкой задаётся переменная w = 4, которая определяет ширину пространства между стенками.
* (проще, чем 1) Напишите программу, которая рисует бесконечно бегущую направо строку из двух стрелочек, каждая длины N. Примерно вот так для N = 2: "-->-->" ">-->--" "->-->-" "-->-->" ...
* То же, что и в 1, но мячик бегает взад-вперёд. (Это сложно. Нужно задуматься о большой пользе от функции abs).
- ** Как 3, но бегает не шарик, а вертящаяся палочка, и бегает не линейно, а по синусоиде (замедляется у стенок, ускоряется в середине).
Подсказки
Если задача 1 не получается, попробуйте сначала её упростить:
- Сделайте программу, которая последовательно рисует строки "o ", " o ", " o ", " o" (просто четыре print)
- Сделайте так, чтобы положение шарика в этой строке определялось переменной (один print и переменная, которая увеличивает своё значение)
- Сделайте так, чтобы исходная строка из пробелов делалась заданной ширины w, и шарик бегал во всю ширину w
- Добавьте стенки по краям пробелов
- Замените print на sys.stdout.write так, чтобы следующая строка рисовалась поверх предыдущей
- Попробуйте поэкспериментировать. Можете добиться чего-нибудь ещё более красивого?