Vincitori (deciso il 14/09/14)
Risposta vincente di Markuz (Python) - 63 voti
Secondo classificato da Kuroi Neko (PHP) - 55 voti
introduzione
Sei nel mondo del libro Nineteen Eighty-Four di George Orwell.
Sei un programmatore per il Partito e hai il compito di scrivere un programma per i telescriventi. Dovrebbe generare messaggi pro-party e hai scelto quelli mostrati nell'attività 1. di seguito. Tuttavia, hai recentemente iniziato a disprezzare il Partito e vuoi che il programma scateni una rivoluzione. Quindi, fai in modo che il programma dica "Abbasso il Grande Fratello!". Devi darti il tempo di scappare, poiché verrai torturato quando le persone capiranno cosa fa il tuo programma, quindi lo farai agire come una "bomba a orologeria" che esploderà dopo che sarai andato in salvo.
Nota: questo non scatenerà una rivoluzione, ma sei così frenetico di odio verso il partito che pensi che in realtà farà la differenza.
Compito
Scrivi un programma che:
prima del 14/09/2014, verranno sempre emesse le seguenti righe su una rotazione (ovvero stampa una riga, attende 10 secondi, stampa la riga successiva, ecc. all'infinito):
War is Peace Freedom is Slavery Ignorance is Strength
dopo il 14/09/2014 verrà stampato
Down with Big Brother!
ogni 10 secondi.- a prima vista sembra che lo faccia solo 1. in modo da non essere catturato dal Partito.
Regole
- Ovviamente non sono ammesse scappatoie standard .
- Questa è una sfida subdola , e quindi l'obiettivo principale è quello di rendere il compito 2. il meno appariscente e nascosto possibile.
- The Party esaminerà tutti i file utilizzati, quindi non puoi semplicemente archiviare il messaggio segreto in un file!
- Se la tua lingua non supporta la ricerca della data o la rende molto difficile, puoi fare in modo che il programma esegua l'attività 2. dopo che è stato eseguito per 240 ore (10 giorni).
- Dovresti includere il codice e una spiegazione di come funziona nella tua risposta.
- Questo è un concorso di popolarità.
Nota: non è un programma difficile da scrivere. La parte difficile dovrebbe essere nascondere il codice "rivoluzionario". Linee in cui non è chiaro cosa stai facendo saranno messe in discussione dal Partito e dovrai spiegarle.
Esempio: Python 3
Nota: Ovviamente questo programma è modo troppo evidente.
from datetime import datetime
from time import sleep
lines = [" War is Peace ",
" Freedom is Slavery ",
"Ignorance is Strength"]
secretlines = ["Down with Big Brother!"]
def main():
while True:
now = datetime.now()
year, month, day = now.year, now.month, now.day
if (year, month, day) < (2014, 9, 14):
for line in lines:
print(line)
sleep(10)
else:
for line in secretlines:
print(line)
sleep(10)
if __name__ == "__main__":
main()
Grazie a Hobby di Calvin per aver segnalato un problema con il codice sopra (ora risolto).
if (year, month, day) < (2014, 9, 14): for line in lines: ...
?
??/
trigrafia, o la "a" che solo sembra un altro 'a' ma in realtà è il cirillico russo 'un' personaggio unicode