Gagnants (décidé le 14/09/14)
Réponse gagnante de Markuz (Python) - 63 votes
Finaliste par kuroi neko (PHP) - 55 votes
introduction
Vous êtes dans le monde du livre Nineteen Eighty-Four de George Orwell.
Vous êtes programmeur pour le parti et avez pour tâche d'écrire un programme pour les écrans télés. Il devrait générer des messages pro-party et vous avez choisi ceux indiqués dans la tâche 1. ci-dessous. Cependant, vous avez récemment commencé à mépriser le parti et vous souhaitez que le programme déclenche une révolution. Alors, vous faites dire au programme "A bas Big Brother!". Vous devez vous donner le temps de vous échapper, car vous serez torturé une fois que les gens auront compris ce que fait votre programme. Vous le faites donc agir comme une "bombe à retardement" qui explose une fois que vous êtes allé en sécurité.
Note: Cela ne déclenchera pas de révolution, mais vous êtes dans une telle frénésie de haine envers le parti que vous pensez qu'il fera réellement une différence.
Tâche
Ecrivez un programme qui:
avant le 14/09/2014, les lignes suivantes seront toujours affichées sur une rotation (c'est-à-dire imprime une ligne, attend 10 secondes, imprime la ligne suivante, etc. à l'infini):
War is Peace Freedom is Slavery Ignorance is Strength
après le 14/09/2014 imprimera
Down with Big Brother!
toutes les 10 secondes.- à première vue, on dirait qu'il ne le fait que 1. afin que vous ne soyez pas attrapé par le Parti.
Règles
- Les failles standard ne sont bien sûr pas autorisées.
- Il s’agit d’un défi sournois . L’objectif principal est donc de rendre la tâche 2. aussi discrète et secrète que possible.
- La partie examinera tous les fichiers utilisés, vous ne pourrez donc pas simplement stocker le message secret dans un fichier!
- Si votre langue ne vous permet pas de trouver la date ou la rend très difficile, vous pouvez obliger le programme à exécuter la tâche 2. après une exécution de 240 heures (10 jours).
- Vous devez inclure le code et une explication de son fonctionnement dans votre réponse.
- C'est un concours de popularité.
Note: Ce n'est pas un programme difficile à écrire. La partie difficile devrait cacher le code "révolutionnaire". Les lignes dans lesquelles ce que vous faites ne sont pas claires seront interrogées par le parti et vous devrez les expliquer.
Exemple - Python 3
Remarque: Il est évident que ce programme est façon trop évidente.
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()
Merci à Calvin's Hobbies pour avoir signalé un problème avec le code ci-dessus (maintenant résolu).
if (year, month, day) < (2014, 9, 14): for line in lines: ...
?
??/
trigraphe, ou le "a" que ressemble à un autre 'a' mais est en fait le cyrillique russe 'a' caractère unicode