Anda di halaman 1dari 4

Praktikum Teknologi dan Kecerdasan Artifisial

NAMA : Muhammad Faris Rasyid Raharjo


KEALS : 1IA23
NPM :51422041
PRAKTIKUM : M5

LISTING
LOGIKA

Mengimpor modul IPython widgets (ipywidgets) dan NumPy (numpy) untuk mengatur
antarmuka pengguna dan melakukan operasi matematika. Kode membuat tombol-tombol "0"
dan "1" menggunakan modul Button dari ipywidgets, serta tampilan skor untuk pengguna dan
bot menggunakan modul IntProgress dari ipywidgets.

Membuat pesan akhir dengan menggunakan modul HTML dari ipywidgets, yang awalnya
diatur sebagai tersembunyi (visibility = 'hidden'). Membuat tampilan permainan dengan
menggabungkan tombol-tombol, tampilan skor, dan pesan akhir menjadi satu tampilan
permainan menggunakan modul VBox dan HBox dari ipywidgets.

Membuat variabel histori pengguna deangan variabel usr_history sebagai wadah untuk
menyimpan histori pilihan pengguna (0 atau 1) sepanjang permainan. Menyusun logika
permainan dengan mendefinisikan dua fungsi, click_zero() dan click_one(), sebagai
penanganan klik tombol "0" dan "1". Fungsi-fungsi ini akan memanggil fungsi update_game()
dengan argumen 0 atau 1, sesuai dengan tombol yang diklik.
Mengupdate permainan dengan Fungsi update_game() akan mengambil pilihan pengguna,
menghitung probabilitas pilihan komputer menggunakan metode Bayes (jika sudah ada
histori), atau menggunakan probabilitas acak (jika belum ada histori). Kemudian, fungsi akan
memperbarui skor pengguna dan bot, serta menampilkan pesan akhir jika salah satu skor
mencapai 20. Fungsi ini juga akan menyimpan pilihan pengguna ke dalam usr_history.
Menampilkan permainan dengan code terakhir menggunakan fungsi display() untuk
menampilkan tampilan permainan yang telah dibuat sebelumnya (game_box) kepada
pengguna.
OUTPUT

Anda mungkin juga menyukai