L'obiettivo di una Rosetta Stone Challenge è scrivere soluzioni in quante più lingue possibile. Mostra il tuo multilinguismo di programmazione!
La sfida
Quando le persone usano il termine "media", generalmente indicano la media aritmetica, che è la somma dei numeri divisa per il numero di numeri. Vi sono, tuttavia, molti più significati della parola "media", tra cui la media armonica , la media geometrica , la media aritmetica , la media quadratica e la media contrarmonica .
La tua sfida è scrivere un programma che inserisca un elenco di numeri e produca quei 5 diversi mezzi. Inoltre, stai provando a scrivere programmi in quante più lingue possibile . Puoi usare qualsiasi tipo di funzione di libreria standard nella tua lingua, poiché questa è principalmente una vetrina linguistica.
Ingresso
L'input sarà un elenco di numeri positivi.
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
Produzione
L'output sarà i cinque mezzi nell'ordine sopra elencato (armonico, geometrico, aritmetico, quadratico, contraarmonico). Convenientemente, è uguale all'ordine crescente.
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
Ci sarà una ragionevole clemenza nel formato I / O, ma voglio diversi decimali di precisione. Dal momento che desidero l'output in virgola mobile, puoi assumere l'input in virgola mobile.
Il criterio vincente dell'obiettivo
Per quanto riguarda un criterio obiettivo vincente, eccolo qui: ogni lingua è una competizione separata su chi può scrivere la voce più breve, ma il vincitore generale sarebbe la persona che vince la maggior parte di queste sotto-competizioni. Ciò significa che una persona che risponde in molte lingue non comuni può ottenere un vantaggio. Il code-golf è principalmente un tiebreak per quando c'è più di una soluzione in una lingua: la persona con il programma più corto ottiene credito per quella lingua.
In caso di pareggio, il vincitore sarebbe la persona con il maggior numero di iscrizioni al secondo posto (e così via).
Regole, restrizioni e note
Il tuo programma può essere scritto in qualsiasi lingua esistente prima del 2 settembre 2014. Dovrò anche fare affidamento sulla comunità per convalidare alcune risposte scritte in alcune delle lingue più insolite / esoteriche, poiché è improbabile che io sia in grado di testare loro.
Conservare tutte le diverse comunicazioni contenute in un'unica risposta.
Inoltre, nessuno shenanigans ha sostanzialmente la stessa risposta in dialetti di lingua leggermente diversi. Sarò il giudice su ciò che le osservazioni sono abbastanza diverse.
Classifica attuale
Questa sezione verrà periodicamente aggiornata per mostrare il numero di lingue e chi guida in ciascuna di esse.
- Algoid (337) - Decadimento beta
- APL (42) - algoritmo condiviso
- Awk (78) - Dennis
- BBC BASIC (155) - Decadimento beta
- 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) - Mark
- Common Lisp (183) - DLosc
- Erlang (401) - Mark
- Fortran (242) - Kyle Kanos
- Fortran 77 (286) - Decadimento beta
- GNU bc (78) - Dennis
- GolfScript (83) - Dennis
- Groovy (157) - Michael Easter
- Haskell (140) - Zeta
- J (28) - algoritmo condiviso
- 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) - Mark
- Perl (76) - Grimy
- PHP (135) - Dennis
- POV-Ray 3.7 (304) - Mark
- Prolog (235) - DLosc
- Pyth (52) - Dennis
- Python 2 (96) - Dennis
- Python 3 (103) - DLosc
- Q (53) - algoritmo condiviso
- Q'Nial (68) - algoritmo condiviso
- QBasic (96) - DLosc
- R (91) - plannapus
- Ruby (118) - Martin Büttner
- Ruggine (469) - Vi.
- Scala (230) - Michele Pasqua
- T-SQL (122) - MickyT
- TI-Basic (85) - Ypnypn
- TypeScript (393) - rink.attendant.6
- VBA (Excel) (387) - Stretch Maniac
- wxMaxima (134) - Kyle Kanos
Classifiche utente corrente
- Dennis (10)
- Martin Büttner (6)
- Michael Easter (5)
- Mark, DLosc, algoritmo condiviso (4)
- Decadimento beta (3)
- Zeta, Kyle Kanos (2)
- Ourous, AndoDaan, COTO, Grimy, plannapus, Vi., MickyT, Ypnypn, rink.attendant.6, Stretch Maniac (1)
(Se ho fatto un errore nelle classifiche sopra, fammi sapere e lo risolverò. Inoltre, il tiebreaker non è stato ancora applicato.)
(a-b)/ln(a/b)
. Devo ammettere che solo oggi ho scoperto come si generalizza in un set campione di più di due :-) en.wikipedia.org/wiki/Logarithmic_mean
bc
, awk
ecc. Come "lingue" o "comandi" - i diversi modi per implementare questo da una shell verrebbero conteggiati in lingue diverse?