Il tuo uccello ha prurito per un po 'di esercizio ed è stanco di rimanere bloccato in posizioni statiche tutto il tempo. Scrivi un programma che mostrerà un uccello ascii che balla in modo casuale, aggiornando ogni 100ms * n o 200ms * n a seconda della mossa della danza. L'uccello inizia sempre con la mossa della danza <(")>
.
Il programma dovrebbe accettare un input che è un numero per moltiplicare l'intervallo di sospensione per ( n >= 0 && n <= 50
).
Mosse di 100ms
^(")v
v(")^
^(")^
v(")v
200 mosse
(>")>
<(")>
<("<)
Dettagli extra
- La casualità non deve essere uniforme ma ogni mossa di danza dovrebbe avere ragionevoli probabilità di verificarsi (almeno 1 su 60 sembra giusto, va bene se la stessa mossa si verifica due volte di seguito)
- Dovrebbe essere visualizzato solo un uccello alla volta, non più uccelli
- Spazio bianco finale consentito (ma altri caratteri finali non lo sono)
- Un uccello dovrebbe essere visualizzato prima del sonno
Esempio in Python 3
import random, time, sys
birds = """(>")>
<(")>
<("<)
^(")v
v(")^
^(")^
v(")v"""
birds = birds.split()
interval = int(input("Sleep for 100ms*"))
selection = -1
while True:
if selection == -1:
selection = 1
else:
selection = random.randint(0, len(birds)-1)
sys.stdout.write('\r'+birds[selection])
if selection > 2:
time.sleep(0.1*interval)
else:
time.sleep(0.2*interval)
vincente
- Questo è il golf del codice quindi vince meno byte!