Défi :
Étant donné un entier n
en entrée. Créez un diamant qui est 2x le nombre donné n
.
Contribution :
L'entrée est un entier n
et 2 <n ≤ 3000.
Sortie:
La sortie sera une chaîne et elle sera sous la forme d'un diamant composé d' +
une ligne d'addition au début indiquant l' n
utilisation de+
Exemples :
D (3): +++ + +++ +++++ +++++ +++ + D (5): +++++ + +++ +++++ +++++++ +++++++++ +++++++++ +++++++ +++++ +++ + D (6): ++++++ + +++ +++++ +++++++ ++++++++++ +++++++++++ +++++++++++ ++++++++++ +++++++ +++++ +++ +
Critères gagnants:
C'est le code-golf donc le code le plus court en octets pour chaque langage de programmation gagne.
n
unaire?+
comme marque de pointage ?n
est pair?Réponses:
brainfuck ,
151139 octetsEssayez-le en ligne!
Prend entrée via unaire, avec
+
s comme marques de pointage ( autorisé par l'affiche ). J'ai décidé de retravailler cela, car je pensais que l'ancien était un peu plus long qu'il ne pouvait l'être (même si celui-ci l'est aussi!).Ancienne version (151 octets):
Essayez-le en ligne!
Prend l'entrée comme cellule de départ. Je ne pouvais pas penser à un moyen de tirer parti de la première moitié pour aider avec la seconde, donc il y a une boucle pour chacun d'eux.
Comment ça marche:
Et juste pour le plaisir:
Essayez-le en ligne!
la source
Canevas , 9 octets
Essayez-le ici!
Explication (certains caractères ont été remplacés pour paraître monospaces):
la source
Python 3 ,
959475 octetsEssayez-le en ligne!
Ma première tentative de golf, toute suggestion d'amélioration est la bienvenue.
EDIT: sauvé 1 octet grâce à Kevin Cruijssen
EDIT: suppression d'un malentendu sur le nombre d'octets
EDIT: sauvé beaucoup plus d'octets grâce à Jo King et user202729
la source
print'\n'.join(['+'*n]+a+a[::-1])
pouvez l'utiliser sans parenthèses pour économiser 2 octets supplémentaires. +1 de moi cependant. Belle première réponse. :)lambda
)).2*i+1 == i+i+1 == i-(-i-1) == i-~i
.05AB1E , 14 octets
Essayez-le en ligne!
Explication
Aussi 14 octets:
L‚˜'+×ćs.∞∊.c»
la source
'+×s·ÅÉ'+×∊.C»
utiliserÅÉ
est un autreÅÉ
mais je l'ai rejetée parce que je ne pensais pas utiliser·
pour le faire fonctionner.Python 3 ,
7978 octetsEssayez-le en ligne!
Merci à cette astuce pour jouer au golf en Python pour m'avoir informé de la
.center
fonction. Renvoie une liste de chaînes.la source
R ,
13511096 octetsEssayez-le en ligne!
@JayCe avec la coupe finale.
La
rep
fonction est assignée à un opérateur infixe existant, par exemple<
ou^
sirep("+", n)
c'est équivalent à ce"<"("+", n)
qui peut être écrit en utilisant<
comme un opérateur infixe comme dans"+" < n
et raccourci à"+"<n
.la source
"+"
directement au lieu de les enregistrer carz
économise quelques octets! Essayez-le ici<
pourrep
obtenir moins de 100 caractères! IciFusain , 15 octets
Essayez-le en ligne! Le lien est vers la version détaillée du code. Explication:
Imprime un triangle inversé de
+
s la hauteur de l'entrée et presque deux fois la largeur.Déplacez le curseur vers le bas pour qu'il se pose sur la ligne supplémentaire après la réflexion.
Faites une image miroir du triangle.
Tracez la ligne supplémentaire à l'aide de la colonne actuelle pour éviter d'avoir à relire l'entrée.
Reflète la sortie de sorte que la ligne supplémentaire pointe vers la gauche.
la source
Stax , 11 octets
Exécuter et déboguer
la source
Python 3 ,
7675 octetsEssayez-le en ligne!
la source
QB64,
8279 octetsla source
JavaScript (Node.js) ,
106105 octetsEssayez-le en ligne!
________________________________________________
Deuxième approche
JavaScript (Node.js) ,
1051009998 octetsEssayez-le en ligne!
la source
Japt
-R
,1817 octetsEssayez-le en ligne!
la source
PowerShell , 55 octets
Essayez-le en ligne!
la source
+
place dex
. Vous pouvez également rendre votre réponse un peu plus conviviale pour la communauté en utilisant Essayez-le en ligne! et en ajoutant un lien vers votre réponseJ , 29 octets
Essayez-le en ligne!
Explication:
la source
Haskell ,
8582 octetsEnregistré 3 octets grâce à nimi !
Essayez-le en ligne!
la source
x
qui économise 4 octets: Essayez-la en ligne!Rubis ,
7161 octetsEssayez-le en ligne!
la source
PHP, 103 octets
Exécuter en tant que pipe avec `-nR´ ou l' essayer en ligne .
la source
PowerShell , 58 octets
Essayez-le en ligne!
Simplement une boucle vers le haut et vers le bas, chaque itération produisant le nombre approprié d'espaces, puis le nombre approprié de signes plus. Ho-hum.
la source
F # (Mono) , 123 octets
Essayez-le en ligne!
la source
/home/runner/code.fs(2,10): error FS0039: The value or constructor 'String' is not defined. Cannot open assembly 'code.exe': No such file or directory.
PHP 102 octets
Je sais que ça peut être beaucoup plus petit que ça;) Greetz mangas
la source
sed 4.2.2 , 69
Le score inclut +1 pour l'
-r
option de sed.Essayez-le en ligne!
la source
Rubis , 59 octets
Essayez-le en ligne!
la source
Python 3 , 98 octets
Essayez-le en ligne!
Version lisible:
la source
Yabasic , 102 octets
Une fonction anonyme qui prend l'entrée comme un nombre unaire avec des
+
marques de pointage et des sorties vers la console.Essayez-le en ligne!
Version alternative, 117 octets
Une réponse de fonction anonyme qui prend l'entrée sous la forme d'un entier décimal et renvoie à la console.
Essayez-le en ligne!
la source
sub
routine définie par l'utilisateur , ne font partie d'aucune bibliothèque et ne peuvent donc pas être appelés discrètement comme les fonctions intégrées peuvent l'être (par exempleAbs(x)
). Vous pouvez en lire un peu plus ici si vous le souhaitez.JavaScript (Node.js) , 183 octets
Essayez-le en ligne!
Mise à jour de ma réponse grâce à @JoKing
la source
APL (Dyalog Unicode) , 25 octets SBCS
Essayez-le en ligne!
Explication:
la source
1↓[2]
->0 1↓
ou encore mieux:c,⍨⌽1↓[2]c←
->⍉(⊖⍪1↓⊢)⍉
Java 8, 159 octets
Peut certainement être joué au golf un peu plus, mais c'est un début.
Explication:
Essayez-le en ligne.
la source
Japt
-R
,1816 octetsEssayez-le
Explication
la source
Attaché , 62 octets
Essayez-le en ligne!
Un lambda qui prend l'entier comme argument.
Exemple
la source
T-SQL, 152 octets
Selon nos règles d'E / S , l'entrée est effectuée via une table préexistante t avec un champ entier n .
Boucle de comptage manuelle, pas très "semblable à SQL". Formaté:
la source