Inspiré par cette question .
Étant donné une liste contenant des nombres, imprimez:
- La somme et le produit des nombres dans la liste
- La moyenne et la médiane
- Les différences entre chaque terme de la liste (ex
[1,2,3] -> [1,1]: 1+1=2, 2+1=3
) - La liste, triée par ordre croissant
- Le minimum et le maximum de la liste
- L'écart type de la liste
Pour référence:
Écart type
Où μ est la moyenne moyenne, x i est le i
troisième terme de la liste et N
la longueur de la liste.
Le code le plus court gagne. Bonne chance!
code-golf
math
array-manipulation
beary605
la source
la source
Réponses:
Q, 41
la source
J,
7370 caractèresUsage:
la source
TI-BASIC, 41 octets
1-Var Stats
est un octet , etΣx
,x̄
etc. sont deux octets chacun.Si la modification de l'ordre de sortie est autorisée, une parenthèse rapprochée peut être enregistrée, ce qui porte le score à 40 octets.
la source
Q (87 caractères)
par exemple.
la source
Rubis 187
Syntaxe d'utilisation:
O[<array>]
(par exemple,O[[1,2,3]]
)Sort toutes les valeurs requises dans la console, dans l'ordre spécifié dans la question.
Exemples IdeOne:
la source
Scala
208202188:Tester:
la source
Julia 0,6 , 66 octets
Essayez-le en ligne!
Julia 0,6 , 88 octets (dev std non corrigé, comme dans op)
Essayez-le en ligne!
la source
n-1
) plutôt que la population std (en divisant parn
) comme requis dans le problème. La multiplication par(n-1)/n
ne le réglerait pas non plus, car lors de la division parn-1
,NaN
est produit. J'ai rencontré les mêmes problèmes en essayant de le faire dans R et je n'y ai pas réfléchi depuis.C ++ 14,
340383 octetsEn tant que lambda générique sans nom. Le premier paramètre
L
est la listestd::list
du type à virgule flottante et le deuxième paramètre est le flux de sortie souhaité, commestd::cout
.Compile avec un avertissement, C ++ ne permet pas
"
directement suivi par des littéraux commeF
. Le programme est toujours en cours d'exécution.Non golfé:
la source
F
pour;F(x)O<<x<<'\n';
et la dernière ligne en:[](A L,A&O){A S=L;A l=L.begin(),k=l;A n=L.size();A s=*l,p=s,d=s*s,h=n/2.;for(S.sort(),Y s+=*l,p*=*l,d+=*l**l);for(l=S.begin();--h>0;++l)F(s)F(p)F(s/n)F(*l)for(Y)O<<*l-*k++<<","F(' ')for(A x:S)O<<x<<","F(' ')F(S.front())F(S.back())F(sqrt((d-s*s/n)/(n-1)));}
;
tout à fait inutile à la fin. Cela pourrait être supprimé, mais le compilateur n'aime pas" "F
:warning: invalid suffix on literal; C++11 requires a space between literal and string macro
il compile quand même ...Perl 5 , 204 + 1 = 205 octets
Essayez-le en ligne!
la source
Pyt , 39 octets
Cela affiche, dans l'ordre, la médiane, le produit, les différences, la liste inversée, la somme, le maximum et le minimum, la moyenne et l'écart-type.
Essayez-le en ligne!
Explication:
la source
APL NARS, 119 caractères, 182 octets
tester
la source
Ocaml - 288 octets
En supposant que la liste donnée est une liste de flottants non vide (pour éviter les conversions), et que la médiane retournée est la définition faible de la médiane:
La version lisible est
la source
PHP, 213 octets
Essayez-le en ligne .
la source