Terinspirasi oleh pertanyaan ini .
Diberikan daftar yang berisi angka, cetak:
- Jumlah dan produk nomor dalam daftar
- Rata-rata dan median
- Perbedaan antara setiap istilah dalam daftar (ex
[1,2,3] -> [1,1]: 1+1=2, 2+1=3
) - Daftar, diurutkan naik
- Minimum dan maksimum daftar
- Standar deviasi daftar
Sebagai referensi:
Deviasi Standar
Di mana μ adalah rata-rata rata-rata, x i adalah i
istilah ke-10 dalam daftar, dan N
merupakan panjang dari daftar.
Kode terpendek menang. Semoga berhasil!
code-golf
math
array-manipulation
beary605
sumber
sumber
Jawaban:
Q, 41
sumber
J,
7370 karakterPemakaian:
sumber
TI-BASIC, 41 byte
1-Var Stats
adalah satu byte , danΣx
,x̄
, dll adalah dua byte masing-masing.Jika mengubah urutan output diizinkan, close-paren dapat disimpan, sehingga skor menjadi 40 byte.
sumber
Q (87 karakter)
misalnya.
sumber
Ruby 187
Sintaks penggunaan:
O[<array>]
(misalnya,O[[1,2,3]]
)Keluarkan semua nilai yang diperlukan ke konsol, dalam urutan yang ditentukan dalam pertanyaan.
Contoh IdeOne:
sumber
Scala
208202188:Uji:
sumber
Julia 0,6 , 66 byte
Cobalah online!
Julia 0,6 , 88 byte (dev std tidak dikoreksi, seperti dalam op)
Cobalah online!
sumber
n-1
) daripada populasi std (dibagi dengann
) seperti yang dipersyaratkan dalam masalah. Mengalikan dengan(n-1)/n
tidak akan memperbaikinya juga, karena ketika membaginyan-1
,NaN
dihasilkan. Saya mengalami masalah yang sama ketika mencoba melakukan ini di R dan tidak memikirkannya sejak itu.C ++ 14,
340383 byteSebagai lambda tanpa nama generik. Parameter pertama
L
adalah daftar padastd::list
tipe floating point dan parameter kedua adalah aliran output yang diinginkanstd::cout
.Kompilasi dengan peringatan, C ++ tidak memungkinkan
"
langsung diikuti oleh literal sepertiF
. Program masih berjalan.Tidak Disatukan:
sumber
F
ke;F(x)O<<x<<'\n';
dan baris terakhir ke:[](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)));}
;
pada akhirnya. Itu bisa dihapus, tetapi kompiler tidak suka" "F
:warning: invalid suffix on literal; C++11 requires a space between literal and string macro
itu mengkompilasi ...Perl 5 , 204 + 1 = 205 byte
Cobalah online!
sumber
Pyt , 39 byte
Ini menghasilkan, dalam urutan, median, produk, perbedaan, daftar terbalik, jumlah, maksimum dan minimum, rata-rata, dan standar deviasi. Q
Cobalah online!
Penjelasan:
sumber
APL NARS, 119 karakter, 182 byte
uji
sumber
Ocaml - 288 byte
Dengan asumsi daftar yang diberikan adalah daftar pelampung yang tidak kosong (untuk menghindari konversi), dan median yang dikembalikan adalah definisi median yang lemah:
Versi yang dapat dibaca adalah
sumber
PHP, 213 byte
Cobalah online .
sumber