Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как решить и создать программу?

Алина Ушкова Ученик (111), закрыт 1 месяц назад
ПИТОН!!
напишите программу, которая запрашивает у пользователя число и выводит обратный отсчёт от этого числа до 1.Если число делится на 3,программа должна вывести "бум" вместо числа
Лучший ответ
Папа Высший разум (144943) 2 месяца назад
Детская задача.
 n = int(input())
print(n if n % 3 else "бум", *range(n-1, 0, -1), sep='\n')
БиллУченик (180) 2 месяца назад
генераторы?
Папа Высший разум (144943) Билл, range - это вроде генератора, специальный объект.
Остальные ответы
Рустам Абдрашитов Мудрец (10250) 2 месяца назад
Не совсем по твоей задаче но подходит и интереснее ?
 import time 
import threading

def get_user_input():
while True:
try:
number = int(input("\nВведите положительное целое число: "))
if number <= 0:
print("\033[91mОшибка: Число должно быть положительным. Попробуйте еще раз.\033[0m")
continue
return number
except ValueError:
print("\033[91mОшибка: Пожалуйста, введите целое число.\033[0m")

def countdown(number, custom_message):
if number < 1:
print("\033[91mОшибка: число должно быть больше 0 для обратного отсчета.\033[0m")
return

print("\nНачинаем обратный отсчет:")
for i in range(number, 0, -1):
if i % 3 == 0:
print("\033[92mБум!\033[0m")
else:
print(f"\033[94m{i}\033[0m")

time.sleep(1)

print("\033[91mВремя вышло!\033[0m")

def main():
print("\033[1;34mДобро пожаловать в программу обратного отсчета!\033[0m")

while True:
number = get_user_input()

custom_message = input("Введите ваше собственное сообщение для обратного отсчета (или нажмите Enter для стандартного): ")

countdown_thread = threading.Thread(target=countdown, args=(number, custom_message))
countdown_thread.start()

while countdown_thread.is_alive():
user_input = input("Нажмите 'p' для паузы или 'r' для продолжения (или 's' для пропуска): ").strip().lower()
if user_input == 'p':
print("\033[93mОбратный отсчет приостановлен.\033[0m")
countdown_thread.join()
break
elif user_input == 'r':
print("\033[92mОбратный отсчет продолжается...\033[0m")
break
elif user_input == 's':
print("\033[93mОбратный отсчет пропущен.\033[0m")
countdown_thread.join()
break

again = input("\nХотите сделать еще один обратный отсчет? (да/нет): ").strip().lower()
if again != 'да':
break

print("\n\033[93mОтсчет окончен! Спасибо за использование программы.\033[0m")

if __name__ == "__main__":
main()
Похожие вопросы