Menu
CoddyTech

Jumlah Mata Dadu

Termasuk bagian Statistik untuk ML dalam perjalanan Machine Learning di Coddy. Pelajaran 15 dari 64.

Lempar dua dadu dan jumlahkan angkanya: angka 7 muncul enam kali lebih sering daripada angka 2. Hitung pasangan sisi dadu:

Kisi 6 kali 6 yang menunjukkan jumlah angka pada dua dadu, dadu pertama ditampilkan di sisi kiri dan dadu kedua di bagian atas. Enam sel yang menghasilkan 7 membentang dari sudut ke sudut dan diarsir; hanya satu sel yang menghasilkan 2

Simulasi menunjukkan hasil yang sama. Jumlahkan hasil lemparan dadu satu per satu, lalu hitung setiap totalnya; value_counts menampilkan yang paling sering muncul terlebih dahulu:

rng = np.random.default_rng(2)
first = rng.integers(1, 7, size=3600)
second = rng.integers(1, 7, size=3600)
counts = pd.Series(first + second).value_counts()
print(counts.head(3))

Ini mencetak:

7    605
6    522
8    443
Name: count, dtype: int64

ax.bar(counts.index, counts) menggambar seluruh tenda:

Diagram batang dari 3600 pelemparan dua dadu: batang naik dari sekitar 100 pada total 2 hingga puncak sekitar 600 pada 7, lalu turun kembali menjadi sekitar 100 pada 12

Diagram batang seperti ini adalah pandangan pertamamu terhadap label apa pun: model hampir tidak akan mempelajari nilai-nilainya yang jarang muncul.

challenge icon

Tantangan

Sedang

Dalam game role-playing, damage adalah jumlah dua dadu bersisi empat, masing-masing bernilai 1 sampai 4. Program membaca jumlah serangan, lalu program awal melempar dadu ke first dan second, serta memberi label pada grafik.

  1. Hitung setiap total damage.
  2. Cetak damage yang paling mungkin dan porsinya dari jumlah serangan, dengan 3 angka desimal.
  3. Gambarkan jumlahnya sebagai batang, satu untuk setiap total, lalu tampilkan.

Untuk 16 serangan, jumlahnya terlalu sedikit untuk dipercaya:

Most likely damage: 6, share 0.312

Grafik batang berjudul Damage Rolls untuk 16 serangan: batang pada 3, 5, 6, 7, dan 8, batang tertinggi pada 6 dengan 5 lemparan

Lalu Coddy menjelaskan grafikmu. Dengan lebih banyak serangan, puncaknya menjadi stabil.

Coba sendiri

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

rolls = int(input())

# Jangan ubah baris-baris di bawah ini
rng = np.random.default_rng(4)
first = rng.integers(1, 5, size=rolls)
second = rng.integers(1, 5, size=rolls)

fig, ax = plt.subplots()
ax.set_title("Damage Rolls")
ax.set_xlabel("Damage")
ax.set_ylabel("Rolls")

# Tulis kodemu di bawah ini
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Statistik untuk ML

Latihan sendiri: Compiler Python online