Deskripsi
Buat game "Tebak angka" yang berfungsi penuh. Game ini dimainkan oleh dua pemain sebagai berikut:
- pemain satu memilih nomor (A) antara 1 dan N
- pemain dua mencoba menebak A memilih nomor (B) dalam rentang yang sama
- pemain pertama merespons "lebih tinggi"
if A > B
, "lebih rendah"if A < B
atau "benar"if A = B
. - langkah 2-3 diulang I kali atau sampai "benar" direspon.
- Jika "benar" terdengar, pemain dua menang kalau tidak dia kalah.
Spesifikasi
Spesifikasi minimum untuk entri yang valid:
- pengguna dapat bermain sebagai pemain satu atau dua pemain.
- komputer memainkan peran lainnya.
- komputer harus benar-benar mencoba menebak angka saat bermain sebagai pemain dua (jadi, menebak data yang diberikan atau mengabaikan data yang diberikan itu curang)
- N = 100 atau input oleh pengguna (pilihan Anda)
- I = 5 atau input oleh pengguna (pilihan Anda)
- Program harus mengumumkan pemenang pada akhirnya.
- petunjuk lengkap yang dapat dibaca manusia tentang apa yang harus dilakukan di setiap langkah (mis. "Bermain sebagai pemain satu atau dua pemain?" , "Masukkan tebakan lain:" , dll.) - jangan mengacaukan yang satu ini; tetap sederhana.
Kondisi menang
Dalam urutan itu:
- Entri dengan suara terbanyak menang jika setidaknya 3 suara di depan dari entri dengan suara tertinggi kedua.
- Entri terpendek menang.
code-challenge
game
Eelvex
sumber
sumber
Jawaban:
Windows PowerShell, 289
Sejarah:
while
→for
else{if...}
→elseif
- menyimpan kawat gigi.switch
untuk menghindari penamaan loop. Sekarang saya bisa menggunakan adilbreak
dan pipa juga. Pengumuman pemenang pindah ke filter yang menggunakanexit
sehingga tidak perlu istirahat, selamanya.elseif
rantai untuk memeriksa tebakan saya hanya menggunakan string format dengan nilai yang berbeda untuk nilai negatif, positif dan nol. Menghemat banyak.sumber
TRS-80 BASIC, 249 karakter
Saya pikir ini mungkin pertama kalinya saya mengirimkan jawaban ke situs ini yang saya tulis sebelum situs itu ada.
Bahkan, saya menulisnya sebelum web di seluruh dunia ada. Kembali pada 1980-an, seperti halnya TRS-80 menjadi tidak relevan.
Ini adalah contoh "one-liner" - upaya untuk menyesuaikan program paling menarik yang Anda bisa ke dalam satu baris BASIC. Itu adalah one-liner pertama saya, dan tidak terlalu mengesankan. (Ada beberapa garis menakjubkan yang beredar di sana.)
Garis TRS-80 BASIC terbatas hingga 255 karakter, minus beberapa untuk overhead. Meskipun Anda kadang-kadang bisa melebihi ini, karena batas sebenarnya adalah 255 byte setelah tokenization - tetapi editor juga akan memotong garis yang memiliki lebih dari 255 karakter sebelum tokenization, dan Anda perlu menggunakan trik dalam editor baris untuk memasukkan karakter kontrol literal seperti baris baru ke string Anda.
Dan ya, untuk memperjelas, garis-garis tersebut dalam daftar adalah karakter baris baru literal. (Untuk mendapatkannya dalam kode Anda, Anda perlu menggunakan
C
perintah hange saatEDIT
mengambil baris. Benar-benar menyakitkan, tetapi layak untuk mengganti delapan atau lebih karakter+CHR$(13)
dengan satu.)Sial, saya sudah lama bermain golf.
sumber
C 397 Karakter
Dalam bentuk yang lebih mudah dibaca.
sumber
C #:
Hitungan karakter: Dengan spasi: 575 Tanpa spasi: 464
Edit do while sekarang "Goto" ( menggigil )
sumber
Dataran tua yang bagus C
sumber
JavaScript
Versi kecil yang
var
diperkecil (alert
panggilan yang dijatuhkan dan dikurangi :268 karakter
Untuk menjalankan panggilan
g(100);
, eksekusi mandiri tidak dihitung, karena menambahkan sejumlah variabel karakter (275 karakter untukg(100);
).asli (sekitar 600 karakter termasuk spasi):
Diminimalkan (312) :
sumber
Python 2.7
334335327314300 Karakter (Golf pertama kali saya)(335) Lupa untuk melarikan diri dari baris baru.
(327) Dihapus berlebihan 100 untuk randint. Membandingkan karakter respons pertama, bukan keseluruhan string.
(314) Pencetakan diperbarui yang menang.
(300) Berubah ketika pemain adalah pemain 1: mengubah menebak nomor sebagai komputer
sumber
BASIC, 184
Ini versi no-AI.
sumber
code-golf
.Lua 360 Chars
Versi non-golf:
sumber
Javascript
Ini adalah sekitar 800 karakter, dan termasuk pilihan biner dasar Anda 'AI' untuk setengah pemutar komputer. Saya mungkin bisa menyimpan beberapa karakter jika saya menghilangkan semua karakter saya
var
tetapi saya tidak suka membocorkan variabel bahkan ketika bermain golf kode. Saya juga melakukan dua langkah "Apakah ini benar?" / "Apakah ini lebih tinggi?" hal dengan konfirmasi pop-up daripada memberikan pop-up cepat dan memeriksa "benar" / "lebih tinggi" / "lebih rendah" meskipun itu mungkin juga bisa menyelamatkan beberapa karakter, saya tidak benar-benar memeriksa.Juga, saya hanya mengujinya di Firefox 4, jadi saya tidak tahu apakah beberapa hal yang saya lakukan bekerja secara konsisten, terutama menyatukan input yang tidak valid, diuraikan sebagai NaN, ke nilai default dalam
wp
fungsi saya .sumber
Java, 1886 karakter
Versi bukan golf:
sumber
int a=5,b=10
(34). Anda dapat memberi nama argumen di konstruktor yang berbeda dari bidang yang harus dihindarithis.
(10). Anda dapat menghilangkanL
semuanya karena selalu tetap pada1
(4). Anda dapat mengabaikan inisialisasiH
danG
yang ditetapkan di konstruktor (6). Anda dapat menggunakan nama satu huruf untuk semua variabel dan metode (235).fuzzify
menggunakan operator kondisional (20). Anda dapat memasukkanBufferedReader
ingetInt
(19). Anda dapat menggunakanString#matches
untuk menghindariPattern
danMatcher
dalamgetInt
(48). Anda dapat menggunakan operator kondisionalprocessGuess
juga (30). Saya sekarang turun ke 1360 alih-alih tahun 1953 awal Anda.Radio Jam Alarm, 5756 bit (2159 byte)
Segera datang ke jam alarm di dekat Anda! Baris baru hanya untuk keterbacaan. Nilai ASCII kadang-kadang digunakan sebagai pengganti tampilan numerik literal di layar. Sesuai dengan spesifikasi. Menggunakan default untuk
A
danI
. Pada input pertama, gunakan NULL untuk menebak, jika tidak, Anda akan mengatur angkanya. PADSIZE HARUS 4! SEL HARUS 7-BIT DAN Bungkus! Turing-lengkap! Outputhigher
,lower
,correct
,you won
, danyou lost
.sumber
Ruby 1.9 (298)
Instruksi tidak terlalu ramah.
sumber
Saya merasa perlu melakukan keadilan Jawa. :)
Jawa -
486437421414Golf
Sedikit Tidak Digolkan
sumber