L'objectif du Rosetta Stone Challenge est d'écrire des solutions dans le plus grand nombre de langues possible. Montrez votre programmation multilinguisme!
Le défi
Lorsque les gens utilisent le terme "moyenne", ils désignent généralement la moyenne arithmétique, qui est la somme des nombres divisée par le nombre de nombres. Toutefois, le mot "moyenne" a encore beaucoup de sens, y compris la moyenne harmonique , la moyenne géométrique , la moyenne arithmétique , la moyenne quadratique et la moyenne controharmonique .
Votre défi consiste à écrire un programme qui entre une liste de nombres et les 5 moyens différents. En outre, vous essayez d'écrire des programmes dans autant de langues que possible . Vous êtes autorisé à utiliser n’importe quelle fonction de bibliothèque standard de votre langue, car il s’agit principalement d’une vitrine linguistique.
Contribution
L'entrée sera une liste de nombres positifs.
1,2,3,4,5
1.7,17.3,3.14,24,2.718,1.618
8.6
3,123456
10.1381,29.8481,14.7754,9.3796,44.3052,22.2936,49.5572,4.5940,39.6013,0.9602
3,4,4,6.2,6.2,6.2
Sortie
La sortie correspondra aux cinq moyennes dans l’ordre indiqué ci-dessus (harmonique, géométrique, arithmétique, quadratique, contraharmonique). De manière pratique, cela équivaut à un ordre croissant.
2.18978,2.6052,3,3.31662,3.66667
3.01183,4.62179,8.41267,12.2341,17.7915
8.6,8.6,8.6,8.6,8.6
5.99985,608.579,61729.5,87296.6,123453.
5.95799,14.3041,22.5453,27.9395,34.6243
4.5551,4.74682,4.93333,5.10425,5.28108
Il y aura une certaine indulgence raisonnable dans le format d'E / S, mais je souhaite plusieurs décimales de précision. Puisque je veux une sortie en virgule flottante, vous pouvez supposer une entrée en virgule flottante.
Le critère gagnant objectif
En ce qui concerne un critère objectif objectif, le voici: chaque langue est un concours distinct pour déterminer qui peut écrire la candidature la plus courte, mais le gagnant est la personne qui remporte le plus grand nombre de ces sous-compétitions. Cela signifie qu'une personne qui répond dans de nombreuses langues peu communes peut obtenir un avantage. Code-golf est généralement un jeu décisif lorsqu'il existe plus d'une solution dans une langue: la personne ayant le programme le plus court obtient un crédit pour cette langue.
En cas d'égalité, le gagnant serait la personne avec le plus grand nombre de soumissions en deuxième place (et ainsi de suite).
Règles, restrictions et notes
Votre programme peut être écrit dans n’importe quelle langue qui existait avant le 2 septembre 2014. Je devrai également compter sur la communauté pour valider certaines réponses écrites dans certains des langages les plus rares / ésotériques, car il est peu probable que je puisse tester leur.
Veuillez conserver toutes vos différentes soumissions dans une seule réponse.
En outre, pas de manigances avec fondamentalement la même réponse dans des dialectes légèrement différents. Je serai le juge quant aux propositions suffisamment différentes.
Classement actuel
Cette section sera périodiquement mise à jour pour indiquer le nombre de langues et le leader dans chacune d'elles.
- Algoid (337) - Beta Decay
- APL (42) - algorithmshark
- Awk (78) - Dennis
- BBC BASIC (155) - Beta Decay
- C (136) - Dennis
- C ++ (195) - Zeta
- C # (197) - Martin Büttner
- CJam (43) - Dennis
- Clojure (324) - Michael Easter
- Cobra (132) - Ourous
- CoffeeScript (155) - Martin Büttner
- Commodore BASIC (104) - Marque
- Common Lisp (183) - DLosc
- Erlang (401) - Marque
- Fortran (242) - Kyle Kanos
- Fortran 77 (286) - Beta Decay
- GNU bc (78) - Dennis
- GolfScript (83) - Dennis
- Groovy (157) - Michael Easter
- Haskell (140) - Zeta
- J (28) - algorithmeshark
- Java (235) - Michael Easter
- JavaScript (ES6) (112) - Dennis
- JRuby (538) - Michael Easter
- Julia (79) - Martin Büttner
- Lua (113) - AndoDaan
- Mathematica (65) - Martin Büttner
- Matlab (63) - Martin Büttner
- Octave (68) - Dennis
- Openscript (849?) - COTO
- Pascal (172) - Marque
- Perl (76) - Grimy
- PHP (135) - Dennis
- POV-Ray 3,7 (304) - Marque
- Prolog (235) - DLosc
- Pyth (52) - Dennis
- Python 2 (96) - Dennis
- Python 3 (103) - DLosc
- Q (53) - algorithmeshark
- Q'Nial (68) - algorithmshark
- QBasic (96) - DLosc
- R (91) - plannapus
- Ruby (118) - Martin Büttner
- Rouille (469) - Vi.
- Scala (230) - Michael Easter
- T-SQL (122) - MickyT
- TI-Basic (85) - Ypnypn
- TypeScript (393) - rink.attendant.6
- VBA (Excel) (387) - Maniaque de bout droit
- wxMaxima (134) - Kyle Kanos
Classement des utilisateurs actuels
- Dennis (10)
- Martin Büttner (6)
- Michael Easter (5)
- Mark, DLosc, algorithmshark (4)
- Beta Decay (3)
- Zeta, Kyle Kanos (2)
- Ourous, AndoDaan, COTO, Grimy, Plannapus, Vi., MickyT, Ypnypn, rink.attendant.6, Stretch Maniac (1)
(Si j'ai commis une erreur dans le classement ci-dessus, faites-le-moi savoir et je la corrigerai. De plus, le bris d'égalité n'a pas encore été appliqué.)
la source
(a-b)/ln(a/b)
. Je dois admettre que seulement aujourd'hui je ne savoir comment il généralise à un ensemble d'échantillons de plus de deux :-) en.wikipedia.org/wiki/Logarithmic_meanbc
,awk
etc. comme des "langages" ou des "commandes" - les différentes façons de les implémenter à partir d'un shell seront-elles comptabilisées dans différentes langues?Réponses:
Langues: 1
Openscript (plusieurs centaines)
(Mon langage de programmation obscur et tristement préféré, car j’ai appris à le programmer il ya de nombreuses années.;)
la source
put the length of the inputs into n
? O_O J'aime déjà cette langue.Langues: 13
Je pense que cette liste devrait maintenant contenir tous les langages de programmation que je connais suffisamment bien pour résoudre au moins des problèmes simples. J'essaierai de garder cette liste complète au fil du temps au fur et à mesure que je chercherai de nouveaux langages. (J'ai utilisé pour en savoir Smalltalk et Delphi, mais je dois chercher à beaucoup pour les ajouter à sentir.)
C,
196190171165 octetsLit l'entrée sous forme d'arguments de ligne de commande individuels et écrit une liste de moyens séparés par des virgules dans STDOUT.
Merci pour quelques améliorations à Quentin.
C ++, 200 octets
C'est le même que le code C ci-dessus, plus deux inclus. J'inclus cela parce que c'est plus long que la soumission gagnante en C ++, donc je suppose qu'aucun mal n'est causé, et j'aimerais que ce message contienne en réalité toutes les langues que je connais. :)
C #,
220197 octetsDéfinit une fonction dans une classe prenant un
List
double et renvoyant un tableau de doubles avec les cinq moyennes.Merci pour quelques améliorations à Visual Melon et Bob.
CJam, 52 octets
Prend l'entrée en tant qu'argument de ligne de commande et imprime une liste avec les cinq valeurs dans STDOUT.
CoffeeScript, 155 octets
C'est presque la même chose que la solution JavaScript plus bas (et au départ, je ne l'ai pas comptée pour cette raison), mais le PO l'a inclus de toute façon dans le tableau de bord, alors je l'ai promue en soumission complète. Ce sont des langues techniquement différentes après tout.
JavaScript (ES6),
155153 octetsDéfinit une fonction prenant un tableau de nombres et renvoyant un tableau avec les cinq moyennes.
Merci pour quelques améliorations à William Barbosa.
Julia, 79 octets
Définit une fonction prenant une liste de nombres et renvoyant une liste avec les cinq moyennes.
Lua, 120 octets
Définit une fonction prenant une liste de nombres et renvoyant 5 valeurs distinctes pour les moyennes.
Mathematica,
736765 octetsDéfinit une fonction prenant une liste de nombres à virgule flottante et renvoyant une liste avec les cinq moyennes.
Fait amusant: Mathematica possède les 5 moyens intégrés (et c'était ma soumission originale), mais trois d'entre eux peuvent être implémentés avec moins de caractères que leurs noms de fonctions.
Matlab,
6563 octetsDemande l'entrée sous forme de tableau de nombres à l'utilisateur et génère les cinq moyennes individuellement.
Merci pour quelques améliorations à Dennis Jaheruddin.
PHP ≥ 5.4,
152149143 octetsMême implémentation fonctionnelle que les précédentes.
Merci pour quelques améliorations à Ismael Miguel.
Python 2, 127 octets
Même implémentation fonctionnelle que les précédentes.
Ruby,
129118 octetsMême implémentation fonctionnelle que les précédentes.
la source
norm(l)/n^.5
à la place denorm(l)/sqrt(n)
.4 langues
J -
3228 car!Une fonction prenant la liste des nombres comme unique argument.
a
voici un adverbe, qui est J prend sur les fonctions de second ordre.+/ % #
est un train dans J, ce qui signifie Somme divisée par le Compte, la définition de la moyenne arithmétique.&.:
est une conjonction appelée Under, oùu&.:v(y)
est équivalent àvi(u(v(y)))
etvi
est l'inverse fonctionnel dev
. Oui, J peut prendre des inverses fonctionnels .Ainsi,
a
prend une fonction à gauche et renvoie une moyenne qui "ajuste" les valeurs par la fonction, prend la moyenne arithmétique, puis inverse l'ajustement par la suite.%a
est la moyenne harmonique, parce que%
signifie réciproque, et est son propre inverse.^.a
est la moyenne géométrique, car^.
est le logarithme naturel et son inverse est l'exponentielle.(Π x)^(1/n) = exp(Σ log(x)/n)
[a
est la moyenne arithmétique, car[
est la fonction d'identité.*:a
est la moyenne quadratique, car*:
est Carré et son inverse est la racine carrée.*:a
divisé par ([a
divisé par*:a
)). Cela ressemble[a(]%%)*:a
. Pendant que nous y sommes, nous PREPEND chacun des moyens,[a(,,]*%~)*:a
.Enfin, nous utilisons des virgules pour annexer le reste des résultats. Nous n'avons pas besoin de parenthèses supplémentaires car la concaténation est (dans ce cas du moins) associative.
En usage sur le J REPL:
Q - 53 caractères
Fonction à argument unique. Nous faisons juste une liste de tous les moyens que nous voulons.
La même chose dans les autres versions de k est ci-dessous.
{s:(a:avg)x*x;(%a@%x;exp a log x;a x;sqrt s;s%a x)}
{s:(a:{(+/x)%#x})x*x;(%a@%x;(*/x)^%#x;a x;s^.5;s%a x)}
APL - 42 caractères
Fonction prenant la liste comme argument.
Expliqué par explosion:
Q'Nial - 68 caractères
Vous allez aimer celui-ci.
Q'Nial est un autre langage orienté sur les tableaux, une implémentation de Nial , qui est basé sur une obscure théorie des tableaux de la même manière que Haskell est basé sur la théorie des catégories. (Obtenez-le ici .) C'est très différent de l'un des trois autres - il analyse d'abord de gauche à droite!
la source
/⍨
). Il était probablement destiné au portage de code très ancien. Qu'est ce que tu utilises? Dyalog? NARS2000? Je trouve vraiment dommage que J ait adopté l’approche du bruit ASCII. La mise en œuvre de ce langage est par ailleurs un travail de génie. Mais je ne peux pas être dérangé pour analyser mentalement]a(,,]*%~)*:a
[0.5]
? Ew.) Avec la pratique, vous vous habituez au J tacite. C'est bien pire que ça.12 langues
CJam,
454443 octetsLit un tableau de flottants (par exemple,
[1.0 2.0 3.0 4.0 5.0]
) à partir de STDIN. Essayez-le en ligne.APL,
6761535250 octetsEssayez-le en ligne.
Pyth,
5552 octetsLit les nombres séparés par des espaces (par exemple,
1 2 3 4 5
) à partir de STDIN.Octave, 68 octets
Sans compter le shebang. Lit un tableau (par exemple,
[1 2 3 4 5]
) à partir de STDIN.GNU bc, 78 octets
Compter le shebang comme 1 octet (
-l
commutateur). Lit les espaces séparés de STDIN séparés par des espaces, suivis d'un zéro.Awk, 78 octets
Sans compter le shebang. Lit un numéro par ligne à partir de STDIN.
GolfScript,
8683 octetsGolfScript ne prenant pas en charge les flottants, le code les analyse. Par conséquent, le format de saisie est plutôt restrictif: vous devez saisir
1.0
et0.1
plutôt que1
,1.
ou.1
.Lit les flottants (comme expliqué ci-dessus) un par ligne, à partir de STDIN. Essayez-le en ligne.
Perl,
9085 octetsCompter le shebang comme 1 octet (
-n
commutateur). Lit un numéro par ligne à partir de STDIN.Python 2,
102 à96 octetsSans compter le shebang. Lit une liste de flottants (par exemple,
1.0,2.0,3.0,4.0,5.0
) de STDIN.ECMAScript 6 (JavaScript),
114112 octetsSans compter le LF. Attend un tableau (par exemple,
[1,2,3,4,5]
) comme argument.PHP, 135 (ou 108?) Octets
Sans compter shebang ou LF. Lit float en tant qu'argument de ligne de commande.
J'ai une solution plus courte, mais je ne sais pas compter les octets:
En comptant les octets dans chaque chaîne de code et en ajoutant deux pour
-R
et-E
, cette approche donnerait 108.C,
172140139137136 136 octetsSans compter le LF. Compiler avec
gcc -lm
. Lit les espaces séparés de STDIN.la source
while(cond)...,n++;
vsfor(;cond;n++)...;
interpreter switches script
pour chaque soumission. En règle générale, les lignes de shebang ne sont pas comptées, sauf si elles contiennent des commutateurs autres que ceux par défaut. Comme indiqué dans ma réponse, j’ai compté#!/usr/bin/awk -f
comme zéro octet (-f
signifie programme lu dans le fichier), mais#!/usr/bin/perl -n
comme un octet (-n
signifie itérer sur les lignes d’entrée).-q
pour Octave et-lm
pour C?-q
est juste pour la sortie silencieuse.-lm
est nécessaire par GCC. D'autres compilateurs peuvent ne pas en avoir besoin.J (50):
Voici le genre de choses sur lesquelles J est doué:
Comme toujours: une explosion dans l'usine de smileys. Cependant, certains des smileys sont restés intacts cette fois-ci:
:)
et:*:
(c'est un gars avec quatre yeux et une gemme intégrée dans son visage) Ma session interactive qui a été utilisée pour créer ceci: http://pastebin.com/gk0ksn2bEn action:
Explication:
Comme on pouvait s'y attendre, 5 fonctions sont regroupées dans une liste contenant un train de fourchettes et de crochets. (Ne vous inquiétez pas, c'est un moyen pratique de créer plusieurs fonctions en sortie dans une seule liste).
Les lignes que j’ai utilisées pour que J génère cette réponse pourraient être un peu plus claires:
Regardons-les séparément.
Harmonique
#
- Longueur (du tableau)%
- Divisé par+/@:%
- La somme (+/
ou pli+
du tableau (+/1 2 3 4
==1+2+3+4
)) au sommet de la division, mais cette fois dans le cas monadique. Ce que cela signifie ici, c’est que J "devine" automatiquement que 1 serait la valeur la plus utile.Géométrique
#
- Longueur (du tableau)%:
- Root (4 %: 7
signifierait « la quatrième (ou Tesseract) racine de sept)*/
- Produit (*/
est similaire à+/
, voir la fonction précédente pour cela)Arithmétique
+/
- somme, devrait être familier maintenant%
- divisé par#
- longueurRacine moyenne carrée
Euh, ouais ...
%:
- La racine de%@#
- l'inverse de la longueur*
- les temps+/@:*:
- La somme des carrés (*:
est au carré, même si l'*~
est aussi.)Contraharmonique
+/@:*:
- la somme des carrés%
- divisé par+/
- la somme.Si J était juste aussi doué pour le traitement des chaînes, nous gagnerions beaucoup plus de compétitions de golf ...
la source
Langues: 5
POV-Ray 3.7 Langue de description de la scène: 304 bytes
(POV-Ray SDL n’a pas de fonctions d’entrée console, c’est pourquoi j’ai substitué l’entrée fichier. La sortie est envoyée à la console, mais elle est entourée d’une bonne partie de la sortie de l’état du programme.)
Commodore BASIC:
111104 octets(Tous les caractères de ce programme ne peuvent pas être représentés en Unicode.
|
Est utilisé pour représenterSHIFT+H
,┌
représenterSHIFT+O
,┐
représenterSHIFT+P
,/
représenterSHIFT+N
. En raison des limitations de Commodore Basic I / O, l’entrée est entrée chiffre par numéro, avec une entrée -1 pour indiquer la fin de l'entrée. La sortie est délimitée par des tabulations.)QBasic: 96 octets
Utilise le même schéma d'E / S que l'entrée de DLosc; J'ai utilisé 15 octets
INPUT V
de golf en renvoyant 0 (ce qui donne false) lorsqu'une ligne vide est entrée (au moins dans MS-DOS QBasic 1.1 - je ne sais pas si cela fonctionne également dans QB64).Pascal (compilateur FPC): 172 octets
L'entrée est séparée par des espaces, pas de virgules, et se termine par une nouvelle ligne. La sortie est séparée par des espaces.
Erlang: 401 octets
La manipulation des cordes à Erlang est une douleur royale. Par conséquent, tous les nombres en virgule flottante doivent être entrés avec au moins un chiffre après le signe décimal -
string:to_float/1
ils ne seront pas convertis1
mais convertis.1.0
.(Plus à venir, surtout si je découvre comment faire cela dans RoboTalk, un langage sans opérations en virgule flottante ni E / S)
la source
(Q/N)^.5
faireSQR(q/n)
, mais cela n'affecte pas la longueur. Peut-être pourrions-nous partager le rôle principal? (Je fais le nombre d'octets 96,wc
) inclut le retour à la ligne suivant, ce qui, je suppose, nous donne l’avance, au moins jusqu’à ce que je sache comment me débarrasser de ce doublonINPUT V
.GOTO
s à la place de la boucle, mais je n'ai pas pu obtenir de réduction supplémentaire.Langues: 3
Sauf indication contraire, les nombres doivent être séparés par espace.
C:
181163Prend les nombres jusqu'à la fin de la saisie.
(ISO) C ++: 195
Prend les nombres jusqu'à la fin de la saisie.
Haskell:
185180164159149140Prend arbitrairement de nombreuses listes de numéros séparés par une nouvelle ligne.
la mise en oeuvre
5041 (merci shiona) octets ne sont que pour IO: /.Exemple
(
echo
Aka de PowershellWrite-Output
imprime chaque paramètre sur une seule ligne)la source
;c=t/a
dans la clause let, écrivez[h,g,a/z,r,t/a]
après lein
.s$m(1/)x
est plus courte ques.m(1/)$x
, telle quelles$m(^2)x
.fromIntegral.length$x
parfoldr(\_ x->x+1)0x
.s$m(const 1)x
.Langues - 4
J'aime toujours une excuse pour sortir bon vieux
QBasic,
11296 octetsQBasic n'est pas bon avec un nombre d'entrées variable, le programme nécessite donc un nombre par ligne, terminé par 0 ou une ligne vide. La sortie est séparée par des espaces.
(Réduit une fois que j'ai compris que 0 n'est pas un nombre valide et peut être utilisé pour la terminaison d'entrée.)
Testé avec QB64 :
Common Lisp, 183 octets
Pour une raison quelconque, je m'attendais à ce que ce soit plus court. Je ne suis pas un expert en Lisp, les conseils sont donc appréciés. Version non-golfée:
Le meilleur moyen de tester consiste probablement à coller la fonction dans le
clisp
REPL, comme suit:J'adore la façon dont Lisp utilise des fractions exactes au lieu de float pour diviser deux entiers.
Prolog, 235 octets
Prolog n'est pas bon en maths, mais on va l'utiliser quand même. Testé avec SWI-Prolog. Je pense que le
sumlist
prédicat n'est peut-être pas un Prolog standard, mais peu importe, je l'utilise.Ungolfed:
Sous Linux, avec le code dans un fichier appelé
means.pro
, testez comme ceci:Donne un résultat correct mais plutôt amusant quand il n'y a qu'un seul chiffre:
Python 3, 103 octets
Même stratégie que la version de Dennis Python 2. Prend une liste de nombres séparés par des virgules; gère à la fois les ints et les flotteurs. Une entrée à un seul chiffre doit être entourée d'accolades (et une liste de nombres peut l' être toujours ); un correctif coûterait 4 octets.
la source
8 langues
Fortran 77 - 286
BBC BASIC - 131
Sortie:
C ++ - 292
Python 3 - 151
Sortie:
Java - 421
Javascript - 231
Je ne suis pas un Javascripter alors tout conseil serait grandement apprécié
Algoid - 337
Recherchez-le sur le Google Play Store ou le Raspberry Pi Store
var'aQ - 376
C’est syntaxiquement correct et tout, mais tous les interprètes actuels ne fonctionnent tout simplement pas ...
la source
sqrt(b4/l)
lieu de(b4/l)**0.5
et beaucoup d' autres en utilisanta
,b
,c
, aud
lieu deb1-4
. Vous me faites également pleurer en utilisant 77 au lieu du F90 + plus moderne.var
:var l=readline(),b=0,d=1,e=0,f=0;
. Je ne sais pas quellereadline
fonction est, cependant.Length of sequence?
ou au moins en le raccourcissant.Langues: 3
CJam, 58
TI-Basic, 85
Java, 457
la source
{dim(Ans)/sum(Ansֿ¹),dim(Ans)√(prod(Ans)),mean(Ans),√(mean(Ans²)),mean(Ans²)/mean(Ans
Langues - 2
Cobra - 132
Python - 129
la source
1 langue
R,
9291Prend un vecteur de valeur et génère un vecteur de moyen.
la source
d=s(x^2)
et remplacez les deux dernières utilisations des(x^2)
withd
.1 langue
Golfscript, 162
Oui, c'est énorme. Et cela peut certainement être réduit. Ce que je ferai un peu plus tard. Essayez-le ici .
Il s'attend à ce que l'entrée soit séparée par une nouvelle ligne. Si cela n'est pas autorisé, je le corrigerai (+2 caractères). Il sort la liste newline séparée.
Voici une version légèrement plus lisible:
la source
l*l
multiplié parl
le nombre de flotteurs.Langues 2
Fortran: 242
Je l'ai ungolfé pour plus de clarté, mais c'est la version golfée qui compte. vous devez d’abord saisir le nombre de valeurs à ajouter, puis les valeurs.
wxMaxima 134
Copiez ceci dans l'éditeur,
ctrl+enter
puis appelez viam([1,2,3,4,5]),numer
pour obtenir une sortie en virgule flottante (sinon, vous obtenez une sortie symbolique).la source
Perl,
8676Entrée: un numéro par ligne.
EDIT: c'est un caractère de plus, mais comme apparemment les lignes de shebang ne comptent pas dans le total, cela finit par être meilleur:
la source
T-SQL,
136122Avec les listes de numéros stockées dans la table S avec I (entier) identifiant la liste et V (float) la valeur.
SQLFiddle
Nous avons économisé 14 grâce à Alchymist
la source
Langues: 5
Certaines entrées s'efforcent d'éviter les erreurs d'arrondi (jusqu'à 4 décimales) en utilisant BigDecimal de Java au lieu de float / double et acceptent les règles IO par OP.
Les nouvelles entrées assouplissent les règles IO et BigDecimal.
Groovy -
409400164157 caractèresexemple de cycle:
Java -
900235 caractèresexemple de cycle:
Clojure -
524324 caractèresexemple de cycle (il y a une virgule de fin à la fin):
Scala -
841663230 caractèresexemple de cycle:
JRuby - 538 caractères
On ne sait pas si JRuby diffère de Ruby: cela doit être exécuté sur la machine virtuelle Java. Pourtant, c'est la syntaxe Ruby. De toute façon, je l'inclue dans l'esprit d'une pierre de Rosette.
exemple d’exécution (affiche un avertissement à stderr):
la source
Langues 1
lua - 113
la source
Langues - 1
Sensationnel:
la source
2 langues
Java - 243 octets
étendu:
vba - excel, 387 octets
Renseignez les valeurs dans la première colonne, puis appuyez sur le bouton (qui déclenche ce code) pour afficher les valeurs dans la deuxième colonne.
la source
1 langue
Rouille - 469
(
rustc 0.11.0-pre (3851d68 2014-06-13 22:46:35 +0000)
)Version non-golfée:
Version compactée de 430 octets sans boucle ni entrée, à tester en lecture seule :
Mise à jour pour la nouvelle rouille:
Ungolfed:
Golfé (402 octets):
la source
Langues: 4
CoffeeScript, 193
Prend une chaîne d'entrée séparée par des virgules:
JavaScript (ES5), 256
Encore une fois, prend une chaîne d'entrée séparée par des virgules:
PHP, 252
Même concept:
TypeScript, 393 *
Puisque TypeScript est un sur-ensemble de JavaScript, j'aurais pu simplement soumettre le même code, mais ce ne serait pas vraiment juste maintenant. Voici un code TypeScript minifié avec toutes les fonctions, variables et paramètres entièrement typés:
Pourrait avoir triché et utilisé le type
any
aussi ... mais, vous savez.la source
Excel - 120
Pas sûr que cela compte comme un langage de "programmation", mais on pourrait penser que les gens peuvent utiliser un tableur pour ce genre de choses
Avec les chiffres en A2: J2
la source
A:A
pour cibler toute la colonneA
.VBA (Excel) - 105
Ungolfed:
Ce code doit être exécuté dans la fenêtre immédiate et le tableau doit être appelé i . Puisqu'il n'y a pas de collecte d'erreur, pas de nettoyage, pas de suppression / libération de variable, si vous voulez tester ce code, vous pouvez utiliser le code suivant (il suffit de coller dans la fenêtre immédiate et d'exécuter les lignes dans l'ordre):
Rien de très spécial, juste le choix d'utiliser la fenêtre immédiate avec : pour remplacer les sauts de ligne, ce qui économise quelques octets par rapport à la configuration et à la fermeture d'une sous-fonction ou d'une fonction; en utilisant ? pour imprimer plutôt que debug.print (seulement dans la fenêtre immédiate); et en s'appuyant sur la façon dont vba détermine les valeurs implicites (l'ajout d'une valeur à une variable non définie renvoie la valeur) et les opérations implicites (toute opération impliquant une chaîne est une concaténation implicite).
la source