Perlihatkan hasil acak lemparan dadu jika dilakukan dengan dadu berbentuk kubus, di ASCII.
$ dice
harus menghasilkan salah satu
-----
| |
| o |
| |
-----
-----
|o |
| |
| o|
-----
-----
|o |
| o |
| o|
-----
-----
|o o|
| |
|o o|
-----
-----
|o o|
| o |
|o o|
-----
-----
|o o|
|o o|
|o o|
-----
alert('-----\n|o o|\n| |\n|o o|\n-----');
adalah program yang benar.print("⚀⚁⚂⚃⚄⚅"(util.Random.nextInt(6)))
(utf-art).Jawaban:
Golfscript, 56 karakter
Solusinya bisa diuji di sini .
sumber
Python,
112110 karaktersumber
id(0)%7%6
? Ini tidak akan menjadi distribusi yang seragam, tetapi secara signifikan lebih pendek ...Ruby 1.9, 80
84karaktersumber
s.reverse
Windows PowerShell, 89
939697101119karaktersumber
Python, 109 karakter unicode
Catatan: Ini tidak menggunakan fungsi acak, jadi tidak akan begitu acak seperti yang lainnya.
sumber
Perl, 74 karakter
Jalankan dengan
perl -M5.010
.(Perhatikan bahwa baris baru dalam daftar adalah bagian dari string, dan tidak hanya disisipkan untuk keterbacaan.)
Jika Anda bertanya-tanya apa yang dilakukan
$->$
operasi, catatan bacaan berikut mungkin bermanfaat:Variabel
$-
secara otomatis memotong nilainya yang ditetapkan ke integer.Variabel
$"
diatur ke ruang tunggal.o
adalah kata pengantar (mewakili"o"
).sumber
Pegolf waktu pertama
Python, 161 karakter
sumber
Gangguan Umum 170
Perhatikan bahwa baris baru itu penting. Tidak seperti bahasa-bahasa "modern" yang konyol ini, Common Lisp lebih memilih keterbacaan daripada kesederhanaan, jadi kami memiliki konstruksi "string gabungan" yang rumit ... dan tidak ada cara ringkas untuk merujuk karakter dalam string.
sumber
JavaScript (
169168141137)Tidak terlihat benar
alert
karena ini bukan font dengan lebar tetap, tetapi yakinlah itu benar, atau uji dengan memancarkan<pre>
tag dan melakukanwriteln
:-)Bukti: http://jsfiddle.net/d4YTn/3/ (hanya berfungsi di browser yang sesuai dengan JS 1.7, seperti FF2 +)
Penghargaan:
Math
Trik yang diretas dari @minitech dan mati logika cetak dari @Keith.Sunting : Hapus
Math
trik dari @minitech karena sebenarnya membuatnya lebih lama :-)Sunting 2 : Simpan 17 karakter. Trik pinjam dari @Keith untuk memanfaatkan simetri dadu. Gunakan trik untuk menyederhanakan konversi angka acak ke int.
Sunting 3 : Hapus
1+
untuk menggeser angka acak dari 1-6 ke 0-5 dan menyimpan 2 karakter. Akibatnya, saya juga dapat mengubahr%2-1
ker%2
dan menyimpan lain 2 chars.Sunting 4 : jsfiddle bekerja kembali. Diperbarui :-)
sumber
|0
trik Anda :-)JavaScript,
215213212145135Kalahkan mellamokb, tetapi saya mengubah solusi asli saya sepenuhnya. Jika Anda ingin ini terlihat bagus, gunakan Google Chrome atau sesuatu, ubah
alert
keconsole.log
, dan voila.Sunting: meminjam | 0 trik mellamokb untuk menyimpan beberapa karakter.
sumber
M=Math
trik Anda yang saya coba curi sebenarnya menjadi satu karakter lebih lama[s.substr(0,3),s.substr(3,3),s.substr(6,3)].join('|\n|')
s
adalah sebuah array. Saya akan memulai ulang dan mencoba lagi.PHP 119
126128131188201213234239sumber
?>
bisa dihilangkan, menghemat 2 karakter.$r
, menyimpan karakter lain. Ruang setelahecho
dapat dihilangkan juga. Anda dapat inisialisasi inisialisasi$a
juga, membawa Anda ke 128. Menempatkan baris langsung ke string daripada melarikan mereka dengan\n
menyimpan dua karakter lain, lalu.C - 215
Kompilasi dengan:
sumber
/D
sakelar ... Tolong jangan curang dengan memasukkan definisi acak ke dalam perintah kompilasi.Python 133
sumber
F # -
165161 karaktersumber
Python 108
114119121122129wtf! sepertinya solusi 1 ?! tapi aku tidak ... curang
108
119
sumber
perl -
111103101sumber
die
alih-alihprint
/say
APL (69)
sumber
Haskell, 154
162167172karakterIni menggunakan kira-kira ide yang sama dengan yang Python.
Versi yang dapat dibaca:
sumber
Skrip Golf
8065Program ini dapat diuji di sini
sumber
PHP 126
127179Solusi PHP lain. Saya sampai pada solusi yang hampir sama oleh Oleg.
sumber
Python (153)
Sejauh ini bukan pengiriman terkecil, saya hanya berpikir itu terlihat bagus :)
sumber
Q (120 karakter)
Pemakaian:
sumber
C,
168164163 karakterMaaf jika saya agak terlambat ke pesta, tetapi karena belum ada jawaban yang diterima, dan satu-satunya solusi C yang agak lama, begini ...
Anda dapat menghapus sertakan dan menyimpan 18 karakter lainnya, tetapi kemudian tidak dapat dikompilasi tanpa peringatan.
Sunting :
menggunakan trik command-line user23241 , kode C terpendek yang menghasilkan hasil (tanpa peringatan kompiler) hanya 12 karakter:
Setidaknya jika Anda menipu dan menggunakan baris perintah berikut untuk mengkompilasi:
sumber
c, 140 karakter
sumber
PHP: 1284
Ini adalah CodeGolf kedua saya, dan saya tidak benar-benar mengincar kekurangan sebanyak kode yang berubah-ubah dan mencocokkan kriteria permainan.
Anda dapat menghasilkan 4 dadu sisi dan 6 sisi.
Mungkin nanti saya akan mempersingkat dan membuatnya sedikit lebih dinamis.
Output 4 sisi:
Output 6 sisi:
sumber
JavaScript 220 byte
sumber
Ruby,
134 132 119 118 117 112111 karakter,Golf kedua saya dalam hidup. Saya telah menggunakan angka ajaib. Adakah saran?
Output:
sumber
VimScript - 169 karakter
Perhatikan bahwa ini bukan Vim murni karena Vim tidak memiliki generator nomor acak bawaan. Ada ekstensi yang dapat diunduh untuk itu tentu saja, tetapi karena saya seorang Linux yang tangguh, saya pikir, mengapa tidak hanya mengandalkan lingkungan shell saja.
Kode
Penjelasan
o
's. Perhatikan bahwa ini dimaksudkan untuk dioptimalkan untuk jumlah karakter paling sedikit, bukan jumlah gerakan paling sedikit (yaitu akan ada cara yang lebih cepat dalam pergantian penekanan tombol jika saya melakukannya secara manual — melakukanif
semua yang ada di kepala saya).^
bukan literal^
tetapi indikasi urutan pelarian.Pengujian
Ubah
RANDOM
keDICEVALUE
, simpan kode VimScript ke dalamnyadice.vim
, kemudian jalankan skrip shell ini di atasnya, berikan sebagai argumen nomor apa pun yang ingin Anda uji:sumber
Mathematica
166161 146143 143 karakterOutput sampel:
Jika matriks itu menyinggung, Anda bisa mengganti
MatrixForm
denganTableForm
dalam kode.sumber
PHP 5.4, 107 byte
102 byte *
** Sayangnya, versi 102 byte mengeluarkan pemberitahuan karena casting
bool
keint
saat pengindeksan string$d
. Selain itu, berfungsi dengan baik. *sumber