Il y a environ un an, le 31 décembre 2015, j'avais l'idée que:
Doorknob a gracieusement rassemblé des personnages de la communauté PPCG et les a gardés en sécurité pendant un an.
Une somme exorbitante 74 personnes ont participé nous avons donc une spiffing 74 imprimable ASCII personnages pour jouer avec!
Voici les 74 caractères de la chaîne de la capsule témoin 2016 dans l'ordre dans lequel ils ont été soumis:
H@~*^)$.`~+1A|Q)p~`\Z!IQ~e:O.~@``#|9@)Tf\eT`=(!``|`~!y!`) Q~$x.4|m4~~&!L{%
Voici les 74 caractères de la chaîne de la capsule temporelle 2016 dans l'ordre ASCII (notez l'espace espace):
!!!!!#$$%&())))*+...1449:=@@@AHILOQQQTTZ\\^`````````eefmpxy{||||~~~~~~~~~
Ce n’est pas beaucoup de choses à travailler, mais ici, nous aimons les défis.
Le défi
Pour déterminer quelle langue est la "meilleure" avec la chaîne de la capsule temporelle, nous aurons 6 (pour 201 6 ) défis de plus en plus difficiles, dans lesquels vous devrez utiliser un sous-ensemble des 74 caractères de la capsule temporelle.
Avoir 6 défis distincts permet de s'assurer que plus de langues peuvent rivaliser, mais seules les meilleures langues pourront y répondre et obtenir un score élevé.
Notation:
- Chaque défi sera noté de 0 à 74 en fonction du nombre de caractères utilisés.
- Des scores plus élevés sont meilleurs.
- Si votre langue ne peut pas terminer un défi, votre score pour ce défi est 0.
- Tout sous-ensemble non vide de défis peut être complété.
- Votre score final est la somme des scores des 6 défis.
- Le meilleur score final possible est 6 × 74 ou 444 .
Les défis
1. Run
Si le code d'une langue ne peut pas fonctionner en premier lieu, il ne pourra rien faire du tout.
Écrivez le programme complet le plus long possible (en utilisant uniquement les 74 caractères de la capsule temporelle, rappelez-vous) qui s'exécute / s'exécute sans erreur de compilation ni d'erreur d'exécution.
Peu importe ce que le programme fait, peu importe qu’il ait une entrée / sortie ou qu’il entre dans une boucle infinie, il importe seulement qu’il soit exécuté sans erreur. (Les avertissements sont acceptables, de même que les erreurs causées par une mauvaise saisie de l'utilisateur.)
Les commentaires sont autorisés, cela pourrait donc être aussi simple que
#H@~*^)$.`~+1A|Q)p~`\Z!IQ~e:O.~@``|9@)Tf\eT`=(!``|`~!y!`) Q~$x.4|m4~~&!L{%
en Python pour un score de 74.
(N'ayez pas peur de répondre si c'est le seul défi que votre langue puisse réussir, mais ne vous attendez pas à beaucoup de votes non plus.)
Score = durée du programme (plus le programme est long, mieux c'est)
2. I / O
Un langage qui n'a ni forme d'entrée ni de sortie est presque aussi inutile qu'un langage qui ne peut pas fonctionner.
Avec un caractère ASCII imprimable!
compris entre (0x33) et }
(0x7D), indiquez le caractère ASCII imprimable avant et après.
La sortie peut être une chaîne ou une liste de longueur deux ou des caractères séparés par un espace ou une nouvelle ligne.
Par exemple, si l'entrée est }
la sortie peut être |~
ou ["|", "~"]
ou | ~
ou |\n~
.
De même, "
est la sortie pour !
et AC
est la sortie pour B
.
Score = 74 - durée du programme (un programme plus court est préférable)
3. Facilité de vie
Les conditions sont souvent nécessaires à l' exhaustivité de Turing , ce qui est souvent nécessaire pour qu'une langue soit utile.
Étant donné un entier positif, s'il se termine par les chiffres décimaux, 16
remplacez-le 6
par a 7
et indiquez le résultat. sinon, indiquez l'entrée non modifiée. Vous pouvez utiliser des chaînes pour les entrées / sorties si vous le préférez.
Exemples:
2016 -> 2017
16 -> 17
116 -> 117
1616 -> 1617
6 -> 6
15 -> 15
17 -> 17
106 -> 106
2106 -> 2106
Score = 74 - durée du programme (un programme plus court est préférable)
4. Capacité de bouclage
Un langage qui ne peut pas faire de boucles engendrera du code répétitif si fastidieux que vous aurez besoin de faire une pause de programmation pendant un certain temps.
Avec un entier positif, indiquez un carré ASCII de cette longueur remplie d'un motif de petits carrés concentriques alternant entre deux caractères ASCII imprimables distincts . Ils ne doivent pas obligatoirement être les mêmes deux caractères pour des entrées différentes.
Par exemple:
1 <- input
X <- output
2
XX
XX
3
XXX
X-X
XXX
4
XXXX
X--X
X--X
XXXX
5
YYYYY
Y...Y
Y.Y.Y
Y...Y
YYYYY
6
XXXXXX
X----X
X-XX-X
X-XX-X
X----X
XXXXXX
7
ZZZZZZZ
Z-----Z
Z-ZZZ-Z
Z-Z-Z-Z
Z-ZZZ-Z
Z-----Z
ZZZZZZZ
Score = 74 - durée du programme (un programme plus court est préférable)
5. Math
Une langue qui n'est pas bonne avec les chiffres et les mathématiques pourrait tout aussi bien être pour les spécialistes des sciences humaines.
Ne prenez aucune entrée, mais indiquez les 72 diviseurs entiers de 2016 , positifs et négatifs, dans n'importe quel ordre. La sortie peut être formatée sous forme de chaîne ou de liste de manière raisonnable.
Exemple:
-1, -2, -3, -4, -6, -7, -8, -9, -12, -14, -16, -18, -21, -24, -28, -32, -36, -42, -48, -56, -63, -72, -84, -96, -112, -126, -144, -168, -224, -252, -288, -336, -504, -672, -1008, -2016, 1, 2, 3, 4, 6, 7, 8, 9, 12, 14, 16, 18, 21, 24, 28, 32, 36, 42, 48, 56, 63, 72, 84, 96, 112, 126, 144, 168, 224, 252, 288, 336, 504, 672, 1008, 2016
Score = 74 - durée du programme (un programme plus court est préférable)
6. Esotérisme
(Non, pas ça .) Chez PPCG, nous aimons notre substance ésotérique et les quines en sont un bon exemple.
Écrivez le plus long quine possible, selon les règles habituelles de quine . Un quine est un programme qui ne prend aucune entrée et se produit lui-même.
Score = durée du programme (plus le programme est long, mieux c'est)
Règles spécifiques
- Dans chacun des 6 défis, votre programme doit être un sous-ensemble des 74 personnages de la capsule témoin réorganisés à votre guise. Il peut s'agir d'un sous-ensemble vide ou d'un sous - ensemble impropre . Ainsi, chacun de vos programmes peut comporter entre 0 et 74 caractères.
- Une nouvelle ligne de fin à la fin de l'entrée / de la sortie / du code est acceptable n'importe où, car certaines langues l'exigent ou ne peuvent pas être facilement évitées.
- Sauf indication contraire, chaque défi peut être complété sous forme de fonction ou de programme complet en fonction de nos valeurs par défaut .
- Tous les défis doivent être complétés dans la même langue.
- Vous devez utiliser une langue (ou une version d'une langue) créée avant 2017, où que vous soyez sur Terre .
- N'importe qui est invité à répondre, que vous ajoutiez un personnage à la capsule temporelle ou non.
N'hésitez pas à utiliser les caractères de la capsule temporelle 2016 dans vos propres défis.
6×74 or 444
n’est pas possible, car cela signifierait des programmes vides, qui se comportent différemment. par conséquent, 442 est le minimum réel, car cela signifie que deux des 3 programmes de prise d'entrée ont un caractère