Inspiriert von dieser Frage .
Bei einer Liste mit Zahlen drucken Sie:
- Die Summe und das Produkt der Zahlen in der Liste
- Der Durchschnitt und Median
- Die Unterschiede zwischen den einzelnen Begriffen in der Liste (ex
[1,2,3] -> [1,1]: 1+1=2, 2+1=3
) - Die Liste, aufsteigend sortiert
- Das Minimum und Maximum der Liste
- Die Standardabweichung der Liste
Als Referenz:
Standardabweichung
Wobei μ der mittlere Durchschnitt ist, ist x i der i
dritte Term in der Liste und N
die Länge der Liste.
Der kürzeste Code gewinnt. Viel Glück!
code-golf
math
array-manipulation
beary605
quelle
quelle
Antworten:
Q, 41
quelle
J,
7370 ZeichenVerwendungszweck:
quelle
TI-BASIC, 41 Bytes
1-Var Stats
ist ein Byte , undΣx
,x̄
usw. sind jeweils zwei Bytes.Wenn das Ändern der Ausgabereihenfolge zulässig ist, kann ein Close-Paren gespeichert werden, wodurch die Punktzahl auf 40 Byte erhöht wird.
quelle
Q (87 Zeichen)
z.B.
quelle
Ruby 187
Verwendungssyntax:
O[<array>]
(zum BeispielO[[1,2,3]]
)Gibt alle erforderlichen Werte in der in der Frage angegebenen Reihenfolge an die Konsole aus.
IdeOne-Beispiele:
quelle
Scala
208202188:Prüfung:
quelle
Julia 0,6 , 66 Bytes
Probieren Sie es online aus!
Julia 0,6 , 88 Bytes (unkorrigierter Standardentwickler, wie in op)
Probieren Sie es online aus!
quelle
n-1
) anstelle dern
im Problem geforderten Grundgesamtheit (dividiert durch ) verwendet. Multipliziert man durch(n-1)/n
wäre es entweder nicht beheben lassen , denn wenn durch Divisionn-1
,NaN
hergestellt wird. Ich bin auf die gleichen Probleme gestoßen, als ich versucht habe, dies in R zu tun, und habe seitdem nicht mehr darüber nachgedacht.C ++ 14,
340383 BytesAls generisches unbenanntes Lambda. Der erste Parameter
L
ist die Listestd::list
vom Gleitkommatyp und der zweite Parameter ist der gewünschte Ausgabestream, wie zstd::cout
.Kompiliert mit einer Warnung, C ++ erlaubt nicht
"
direkt gefolgt von Literalen wieF
. Programm läuft noch.Ungolfed:
quelle
F
zu;F(x)O<<x<<'\n';
und die letzte Zeile zu[](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)));}
;
. Das könnte entfernt werden, aber der Compiler mag es nicht" "F
:warning: invalid suffix on literal; C++11 requires a space between literal and string macro
es kompiliert zwar ...Perl 5 , 204 + 1 = 205 Bytes
Probieren Sie es online aus!
quelle
Pyt , 39 Bytes
Dies gibt in der Reihenfolge den Median, das Produkt, die Differenzen, die umgekehrte Liste, die Summe, das Maximum und das Minimum, den Mittelwert und die Standardabweichung aus
Probieren Sie es online aus!
Erläuterung:
quelle
APL NARS, 119 Zeichen, 182 Bytes
Prüfung
quelle
Ocaml - 288 Bytes
Angenommen, die angegebene Liste ist eine nicht leere Liste von Floats (um Conversions zu vermeiden) und der zurückgegebene Median ist die schwache Definition des Medians:
Die lesbare Version ist
quelle
PHP, 213 Bytes
Probieren Sie es online aus .
quelle