Écrivez un quine, qui une fois exécuté, se crée dans le répertoire courant, dans un fichier source nommé lui-même. Nous utiliserons Windows pour cela, donc le nom de fichier (et donc quine) doit avoir les limitations suivantes:
- Aucun de ces personnages
\ / : ? * < > |
- Moins de
211255 caractères
Limites et hypothèses
Votre code doit être un programme complet (il va être exécuté après tout).
Pas de copie depuis le fichier source.
Vous pouvez supposer qu'il n'y a pas d'autre fichier avec votre Quine comme nom (car cela produirait Quine (1)).
Les erreurs sont autorisées (tant qu'elles n'entrent pas dans le code source
C'est le code-golf , le code le plus court en octets gagne!
Éditer
Peut-être que je n'étais pas clair, le fichier avec le nom du quine doit en fait contenir le quine. Ma faute.
Réponses:
Vitsy,
1027 octetsSi cela
:
était autorisé, je pourrais le raccourcir à 11 octets. :(Explication:
Les deux piles seront identiques à la fin. Sur certaines versions de Java, cela peut générer un en
FileNotFoundException
raison des différentes implémentations de laFileInputStream
classe.Réponse précédente avant modification:
Explication:
Parce que je pourrais aussi bien, voici un diagramme des étapes qui se produisent dans les piles (chaque pile est représentée par
[]
):Je ne sais pas vraiment comment cela fonctionne correctement; des changements infimes provoquent une rupture. Par exemple, placer le
&
dans divers autres emplacements devrait tout aussi bien fonctionner, mais cela entraîneClassCastException
s,IOException
s etArrayOutOfBoundsException
s selon l'endroit où vous le placez. Je devrais peut-être faire quelques corrections de bugs.la source
Push a new stack to the stack stack.
o
? ;)Node.js,
5652 octetsCeci imprime l'avertissement
Si vous voulez que le tout-vert, il en coûte 4 octets au changement
writeFile
dewriteFileSync
.la source
Lua, 96 octets.
Tapé ceci sur mon téléphone, ça devrait marcher, mais je vais le tester quand j'arriverai à un ordinateur.
la source
sting.format
àstring.format
deux fois.C, 134 octets
la source
*
donc il ne semble pas que ce soit autorisé selon les règles.