125 votes

Défi de programmation : pouvez-vous coder un programme "hello world" sous forme de palindrome ?

Le puzzle consiste donc à écrire un programme hello world dans le langage de votre choix, où le fichier source du programme, en tant que chaîne de caractères, doit être une palindrome .

Pour être clair, la sortie doit être exactement "Hello, World".


Editar:

Avec les commentaires, cela semble trivial (même si je n'y ai pas pensé moi-même [soupir]). cobalt ).

Así que nouvelle règle : pas de commentaires.


Editar:

Je me sens un peu mal d'éditer la question de quelqu'un d'autre pour dire cela, mais cela éliminera beaucoup de non-palindromes qui continuent à apparaître, et je suis fatigué de voir la même erreur simple encore et encore.

Ce qui suit est PAS un palindrome :

()()

Les éléments suivants IS un palindrome :

())(

Les crochets, les parenthèses et tout ce qui doit correspondre sont un obstacle majeur au palindrome, certes, mais cela ne signifie pas que vous pouvez les ignorer et poster des réponses non palindromes.


Langues représentées jusqu'à présent :

C, C++, Bash, elisp, C#, Perl, sh, Windows shell, Java, Common Lisp, Awk, Ruby, Brainfuck, Funge, Python, Machine Language, HQ9+, Assembly, TCL, J, php, Haskell, io, TeX, APL, Javascript, mIRC script, Basic, Orc, Fortran, Unlambda, Pseudo-code, Befunge, CFML, Lua, INTERCAL, VBScript, HTML, sed, PostScript, GolfScript, REBOL, SQL

27voto

Visha Points 11

En common lisp (sans commentaires ni sucre syntaxique). Imprime seulement "Hello World !" et retourne NIL.

(let (tel etouq)
  (let (tamrof etouq)
    (format t "Hello World!"
            "!dlroW olleH" t tamrof)
    (quote format)
    tel)
  (quote let)
  tel)

24voto

David Z Points 49476

Surprise surprise, Jon Skeet a fait cela ;-)

22voto

Befunge

0"dlroW ,olleH"v<
@_,^         >#:^
^:#>         ^,_@
<v"Hello, World"0

19voto

Mark Stock Points 1293

En HQ9+. ,

H

editar:

Comme l'indique clairement le défi, la sortie doit être exactement "Hello, World" alors que HQ9+ imprime "Hello, world !" et donc voici une version spéciale de HQ9+ écrite en C qui, une fois compilé, produira exactement "Hello, World" en utilisant la commande suivante :

./hq9 "" -9qH H one letter palindrome

19voto

Artelius Points 25772

Je voulais coder une solution en C qui n'utilise pas de #if o #ifdef parce que je les considère comme une autre forme de commentaires.

Voici donc ma tentative, totalement exempte de commentaires, #if et #ifdef s.

J'ai utilisé gcc 4.3.2 avec le -Wall il a été compilé sans avertissement ni erreur.

 
#define niam ){printf("Hello, World\n");return 0;}x(( z enifed#
;int(y);
#define x(x)
#include <stdio.h>
#define tni 0)
#define y int y=
int main(niam tni
=y tni y enifed#
)0 int enifed#
>h.oidts< edulcni#
)x(x enifed#
;)y(tni;
#define z ((x};0 nruter;)"n\dlroW ,olleH"(ftnirp{) main enifed#

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X