"Bonjour tout le monde!", En répétant chaque caractère n fois [fermé]

15

Dans la langue de votre choix, écrivez un programme qui sort exactement Hello world!. Chaque caractère de votre programme doit être répété n fois - vous choisissez n .

Par exemple, vous pouvez choisir 2 pour n . Cela signifie que chaque caractère utilisé dans votre code source doit être répété autant de fois, ou 0.

Si je devais choisir 3 pour n , ce programme serait valide:

ab(b(b(aa)));;;

Règles:

  • Vous ne pouvez utiliser aucune ressource externe
  • Aucune entrée utilisateur ne peut être fournie
  • Vous devez produire exactement Hello world! , ni plus, ni moins. Les sauts de ligne sont l'exception, ils sont facultatifs.
  • n doit être> = 2, pour que les choses restent intéressantes
  • Il est fortement déconseillé d'utiliser des commentaires pour atteindre votre objectif.

Concours de popularité, se terminant dans 14 jours. La réponse la plus élevée à la fin gagne!

annuler
la source
Volons toutes les réponses de ce sujet: codegolf.stackexchange.com/questions/18925/… avec n = 1
Fabinout
Oups, disons que n>=2, @Fabinout
Annuler le
1
voici un JSFiddle que j'ai jeté ensemble pour tester si quelqu'un en a besoin
Poignée de porte
2
J'aimerais voir une solution HQ9 + pour cela.
Nzall
1
@Nate HQ9 + génère une virgule (comme indiqué dans une réponse supprimée). ;-)
Poignée de porte

Réponses:

25

Brainfuck

n = 57. 45 nouvelles lignes supprimées grâce à un monstre à cliquet

++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++..+++.>++.<++++++++.--------.+++.------.--------.>+.---------------------------------[.............................................][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]<-<<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

Une version plus lisible:

+++++ +++++ [
    > +++++ ++
    > +++++ +++++
    > +++
    <<< -
]
> ++ .
> + .
+++++ ++.
.
+++ .
> ++ .
< +++++ +++ .
----- --- .
+++ .
----- - .
----- --- .
> + .
---------------------------------[.............................................][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]<-<<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><

La dernière ligne (sur la version lisible) est pour remplir le nombre de caractères. Ce ne sont pas des commentaires. Les s []sont while(0), et les ><s sont essentiellement des non-ops

user12205
la source
ne pouviez-vous pas mettre l' .intérieur de l'un []et ne pas sortir les sauts de ligne
ratchet freak
@ratchet freak Bon point. Merci.
user12205
Je pense que le cliquet suggérait de déplacer le [dans le premier []avant les points, afin qu'il ne produise même pas de NULL.
Ilmari Karonen du
@Ilmari Karonen Ah oui, je vois. Merci.
user12205
12

Javascript

alert(("aaaeerrttt((,,,HHHoo   wwwddd!!!))","Hello world!"))

Cela semblait un peu trop facile.

Kendall Frey
la source
12

Python 3, n = 3, aucun commentaire

dwwppHottedHen =print((("H[e]l1l1o\\ !w!orrilidn!\""[::2][:12])))== 2

Pas trop difficile à comprendre pour un pythoniste. ;) (Astuce: essayez de "abcdefghijk"[::2]voir ce qu'il en résulte)

Soit dit en passant, a HottedHenest un poulet réchauffé, si vous vous posiez la question. ( dwwppAvant cela représente drinking water with purple pancakes, car c'est ce que faisaient les poules quand je l'écrivais. Tout le monde sait que les crêpes violettes vont bien avec l'eau. Évidemment.)

Poignée de porte
la source
11

C, 54

main(Hadmeinwurst015p){{!puts("Hello\40wor\154d!");;}}
Luciole
la source
1
Vous avez un av qui ne correspond pas
Eduard Florinescu
@Eduard hm, vous avez raison, il a dû s'y glisser accidentellement car il ne semble pas avoir été inclus dans le nombre de personnages ... corrigé.
FireFly
5

Golfscript - 32

Nouvelle version avec 2 de chaque caractère utilisé - 32 - Test en ligne

;"Hello wor\x6cd!" '\Hewrx6cd!';

Ancienne version - 39 - Test en ligne

;;'Hello world!'  "'HHeewworrdd!!\\\"";

EDIT: mis à jour depuis la mise à jour des règles en disant qu'il était découragé par l'utilisation de commentaires

Plarsen
la source
Beaucoup mieux sans commentaires!
Annuler
4

Java - 1221 caractères

Chaque caractère est répété (int)'!'plusieurs fois.

public class ncharacterHelloworld {
    public static void main(String[] args){
        {;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;
{;{;{;{;{;{;{;{;{;{;{;{
String pppppppppppppppuuuuuuuuuuuuuubbbbbbbbbbbbbbbllllllllllliiiiiiiiiiicccccccccccccaaaaaaaaaaaassssssssssssssnnnnnnnnnnnnnhhhhhhhhhhhhhhhhrrrrrrrrrrrrttttttttttteeeeeeeeeeeeeeHHHHHHHHHHHHHHHooooooooooooowwwwwwwwwwwwwwwdddddddddddddddvvvvvvvvvvvvvvvvmmmmmmmmmmmmmmmSSSSSSSSSSSSSSSgggggggggggggggyyyyyyyyyyyyyyyy="Hello world!",
a=pppppppppppppppuuuuuuuuuuuuuubbbbbbbbbbbbbbbllllllllllliiiiiiiiiiicccccccccccccaaaaaaaaaaaassssssssssssssnnnnnnnnnnnnnhhhhhhhhhhhhhhhhrrrrrrrrrrrrttttttttttteeeeeeeeeeeeeeHHHHHHHHHHHHHHHooooooooooooowwwwwwwwwwwwwwwdddddddddddddddvvvvvvvvvvvvvvvvmmmmmmmmmmmmmmmSSSSSSSSSSSSSSSgggggggggggggggyyyyyyyyyyyyyyyy,
u="\"=============================,,,,,,,,,,,,,,,,,,,,,,...............................",b="\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\\\\\\a",i,l,c,t,H,o,w,m;int[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]ffffffffffffffffffffffffffffffff;
        if(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!(!!true)))))))))))))))))))))))))))))))
System.out.println(a);
}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
    }




}

J'étais fatigué de mettre tout =et ,ainsi de suite dans le code, alors j'ai fini de les vider tous dans une chaîne; pas un commentaire, une chaîne. Chaque caractère valide est utilisé pour un nom de variable.

Justin
la source
3

Script de commande Windows - 33 octets

3 de tout:

ecHo Hello world!% eHccwwrrdd!!%%
Robert Sørlie
la source
3

Ligne de commande Windows - 42 octets

n = 3

ecHo.Hello world! 2>^>2cceHwwrrdd!.. 2>^^!

Lot - 45 octets

@ecHo.Hello world! 2>^>2cceHwwrrdd@@..! 2>^^!


2>redirige stderr vers un fichier appelé >22cceHwwrrdd- >n'est pas un caractère valide pour un nom de fichier - redirige la sortie de cette erreur vers un fichier appelé ^!.

Réalisé que j'ai complètement ignoré !et >. Dang.

dégrader
la source
J'espionne
3

Rubis - 40 caractères (n = 2)

print "Hel\x6co World!"||'pintHe\x6cWd!'
Siva
la source
Combien d'espaces avez-vous? Est-il exact de dire que les deux premiers autour psont des onglets (ou quelque chose de similaire)?
Justin
@Quincunx Le premier espace était une faute de frappe. Maintenant édité
Siva
3

PHP - 30 octets, n = 2

Hell<?='=s?<;^2s'^RSHSI2VReIV;

Solution la plus courte jusqu'à présent. Je peux peut-être réduire cela de 2 à 4 octets supplémentaires.

primo
la source
2

PHP

<?print"H\145llo wor\154d!"; $Hwpintd<>!'$';?>

Version plus courte (42 caractères):

<?print"H\145llo wor\154d!"; 'Hwd<pint?!';

Page en ligne avec cette source

3ventic
la source
Je pense que vous pouvez: - ne pas finir avec?> (Ce qui éliminera l'utilisation de>) - traiter Hepwintd <! sous forme de chaîne - 'Hepwintd<!'qui se chargeront de $
eithed
2

Gelée , 16 octets (non concurrent)

“⁸ƒẹI4»
“⁸ƒẹI4»

(+ nouvelle ligne de fin)

Essayez-le en ligne! (n = 2)

AUCUN COMMENTAIRE. Je t'assure. Il suffit de relier 1 et le lien principal.

Erik le Outgolfer
la source
Et oui, je sais que ce n'est pas du golf de code .
Erik the Outgolfer
Hmm ... donc cette réponse a ouvert la voie à fermer pour ce défi. Agréable.
Erik the Outgolfer
1

Perl (51 octets)

print'Hello world!'; ppriinnttHHeeowwdd; "'\"\\!!";
Konrad Borowski
la source
Ancien poste et n'a probablement pas trop d'importance, mais vous pouvez enregistrer quelques octets en utilisant $'ou à l' $"intérieur d'un q!!bloc au lieu des `\` s.
Dom Hastings
1

C, 75 56 54

2 de tout

main(HWacdeimnprstux6) {{!puts("Hel\x6co\ World!");;}}

main( ){puts("Hello Wor\x6cd!\0!;HWacdeimnprstux06{}");}

3 de tout.

main(){puts("Hello World!\000!!;;HHWWaaddeeiimmnnpprrssttuu{}{}\"\()o");}

Putsarrête la lecture après le premier octet nul ( \000) et ne sort que tout ce qui précède.

Kevin
la source
Dans le premier iest un peu solitaire! :)
Eduard Florinescu
Vos deux premiers n'en ont qu'un i(facile à corriger: changez le mainnom de l' argument). Votre dernier n'a qu'un seul espace
Poignée de porte
1
@EduardFlorinescu Lol, je l'ai posté exactement en même temps que vous: P
Poignée de porte
Oups, le premier manquait. Le second l'avait, juste à sa place.
Kevin
1

Python:

Avec 3 caractères chacun.

print 'Hello world!'#He's aware#paints#Hipos!nddwt!

nddwt est un rhinocéros!

Eduard Florinescu
la source
1

JavaScript 40 (n = 2)

J'ai adopté une approche légèrement différente de @eithedog, en utilisant les lettres restantes pour agir comme un déclencheur logique, de sorte qu'il était absolument essentiel de l'utiliser pour activer la alertfonction.

('Hawtd !')&&alert("He\x6c\x6co world!")

WallyWest
la source
1

Python 2, 38

deinptw=H=5; print"Hel\154o world\41";
Armin Rigo
la source
1

Javascript, 40

alert("Hel\x6Co wor\x6Cd!", !('adtHw,'))

Si je ne me trompe pas, chaque personnage apparaît deux fois (même si j'ai commencé à voir double, donc je ne suis pas sûr)

edit: Et, si vous abusez des règles - 36 :

alert("Hel\x6Co wor\x6Cd!")( !wdatH)

(abus = alors que la sortie est donnée comme une invite, la console affiche l'erreur - je ne sais pas comment traiter cela).

eithed
la source
2
rapparaît 3 fois et wn'apparaît qu'une seule fois. (dans les deux versions) Il suffit de remplacer la finale rpar wpour la réparer
Poignée de porte
Oh, dyslexie, cruelle maîtresse ... Merci!
vu le
1

Bash, 39

echo -e "H\r--w\"!wccdd!\rHello world!"

Cela affiche exactement Hello world !, et représente 39 caractères si vous omettez la nouvelle ligne de fin (bash ne semble pas en avoir besoin).

Si vous avez besoin d'une version sensible à la casse, elle devient 42 caractères:

echo -e "HhhH\r--w\"!wccdd!\rHello world!"

la source
1

JavaScript (52 caractères)

alert(['He\x6C\x6Co world!'][(!1,0)-0], +-1+"Hadtw")

Chaque personnage est utilisé 2 fois, et il n'utilise aucun commentaire!

Remarque: J'ai d'abord publié cette réponse ici .

Brosse à dents
la source
1

Golfscript x4 - Pas de symboles supplémentaires - Utilisation de toutes les commandes possibles

'HHHeeelWWWrrrd'!!! do do 'Hello world!'

J'ai essayé d'en faire un qui n'avait pas de symboles supplémentaires au-delà de ce qui était absolument nécessaire (bien que j'aurais pu choisir à la "place de 'ou ")

Comme objectif secondaire, je voulais également mettre le moins de caractères possible dans une chaîne, donc j'ai utilisé l' !opérateur en tant que tel et j'ai également pressé les doopérateurs.

McKay
la source
1

R, 346 caractères, n = 12

cat((((((((((intToUtf8(c(40,69,76,76,79,0,55,79,82,76,68,1)+31+1+0+0+0+0+0+0+0+0++0*11111111[1]*22222222222[1]*33333333333[1]*44444444444[1]*5555555555[1]*6666666[1]*7777777[1]*888888888[1]*999999*9[1]*9[1]*9[1])))))))))),"\"\"\"\"\"\"\"\"\"\"\\aaaaaaaaaaaccccccccccfffffffffffiiiiiiiiiiinnnnnnnnnnnoooooooooootttttttttTTTTTTTTTTTUUUUUUUUUUU"[0])

Caractères utilisés dans ce code:

,"()[]*\+0123456789acfinotTU
Sven Hohenstein
la source
1

ASP classique (VBScript; 62 caractères)

Hel<%REspOnsE.wRite Chr((0<0>-.6&"!")+&H6C+h-dinptO)%>o world!

Utilise chaque personnage exactement 2 fois!


Edit: Ce code est un peu plus court:

Hel<%= Chr((0<0>we=6&"!")+&H6C+hd)%>o world!

Et c'est ainsi:

Hel<%= CHr((0<1>wedC=8&"!&")++108)%>o world!
Brosse à dents
la source
1

Befunge 98 - 26 octets

Comme je devais rquand même le dupliquer , je me suis dit que je pouvais aussi bien faire lire le texte source de gauche à droite plutôt que le style gnirtsBefunge typique . Il n'y a rien de particulièrement remarquable à ce sujet; Je ne sais pas si avoir du code qui n'est tout simplement pas exécuté compte comme un commentaire, mais les six caractères Hel w!sont simplement ignorés.

rHel w!@,dk"Hello, world!"
Hactar
la source
0

Turtlèd, n = 3, (non compétitif)

N = 3, à cause de "Bonjour tout le monde!" avoir trois ls.

'!' ' HHeeowwrrdd"Hello world!""!

Essayez-le en ligne

Explication:

'!                                write exclamation mark
  ' '                             write space twice on the same cell as exclamation mark
      HHeeowwrrdd                 balances chars in Hello world!, moves the pointer
                 "Hello world!"   Write Hello world! to grid
                               "! Write the exclamation mark again, on top of the last one
Citron destructible
la source