Terminal reverse subtraction loop module
Project description
tzxc
Терминальный модуль с управляемым циклом обратного вычитания и настраиваемым поведением выполнения.
Установка
pip install tzxc
Быстрый старт
from tzxc import Tourter
game = Tourter()
game.zxc(delay=1)
Описание
Метод zxc() запускает цикл, начиная со значения 1000 и вычитая 7
на каждой итерации.
Цикл останавливается, когда значение достигает 6, если не включён
бесконечный режим.
Общее количество итераций при настройках по умолчанию: 143.
API
Класс
Tourter()
При создании экземпляра класс сохраняет имя текущего пользователя
системы (используя getpass.getuser()), которое применяется для вывода
в автоматическом режиме.
Метод
zxc(
delay: int,
infinity: bool = False,
hard_mode: bool = False,
ctrl_off: bool = False,
crazy_mode: bool = False,
lang: str = "ru"
)
Параметры
delay (int, обязателен)
Задержка между действиями в секундах.
В обычном режиме одна итерация занимает примерно delay * 2 секунд.
infinity (bool, по умолчанию False)
Если True, после достижения значения 6 цикл начинается заново с
1000.
hard_mode (bool, по умолчанию False)
Включает ручной режим:
- Пользователь должен вводить результат выражения
x - 7 - Неправильные ответы подсчитываются
- После 5 неправильных ответов выполняется команда перезагрузки системы
- Правильный ответ сбрасывает счётчик ошибок
ctrl_off (bool, по умолчанию False)
Перехватывает сигнал SIGINT (Ctrl+C) и предотвращает прерывание.
После завершения выполнения оригинальный обработчик сигнала
восстанавливается.
crazy_mode (bool, по умолчанию False)
Зарезервирован для будущих обновлений. В текущей логике выполнения не
используется.
lang ("ru" | "eng", по умолчанию "ru")
Определяет язык сообщений.
Поведение
Обычный режим
- Автоматическое выполнение
- Отображает выражение и вычисленный результат
- Ввод пользователя не требуется
Сложный режим
- Требует ввода пользователя
- После 5 неправильных ответов выполняется команда перезагрузки системы:
- Windows →
shutdown /r /t 0 - Linux →
sudo reboot
Сложность
При infinity=False:
- 143 итерации
- Временная сложность:
O(1) - Пространственная сложность:
O(1)
В абстрактной модели (если начальное значение заменить на n) → O(n).
Архитектура
Модуль использует:
- системные вызовы (
os,sys) - обработку сигналов (
signal) - задержки выполнения (
time) - определение имени пользователя (
getpass.getuser())
Детали инициализации
При запуске:
x = 1000
uncorrect_answers = 0
Цикл реализован с помощью:
while True:
Завершение работы контролируется вручную через break.
Количество итераций
Расчёт:
(1000 - 6) / 7 = 142
Так как финальное условие также проходит через цикл, общее количество итераций составляет 143.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tzxc-1.0.0-py3-none-any.whl.
File metadata
- Download URL: tzxc-1.0.0-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4fd187b59ed325e0db4b6e0976cd9ae0185d427d91b283113e9d5716d08cf35
|
|
| MD5 |
f3f6cb89e4f2995c8b1c045f210b88ab
|
|
| BLAKE2b-256 |
ed90bb2305491f62c484aca74dc57679a9b879d03c42a21937734a1135d8bdaa
|