7章プログラム
この章では、R関数の実行によってプレイできる本物の動くスロットマシンを作ります。完成したら、次のようにしてプレイすることができます。
play() ## 0 0 DD ## $0 play() ## 7 7 7 ## $80
play
関数は、2つのことをしなければなりません。まず、3つのシンボルをランダムに生成しなければなりません。第二に、それらのシンボルをもとに賞金を計算しなければなりません。
第1のステップは簡単にシミュレートできます。sample
関数を使えば、ランダムに3つのシンボルを生成することができます。これは、第Ⅰ部で2個のサイコロをランダムに「振った」のとよく似ています。次の関数は、ダイヤ(DD
)、セブン(7
)、トリプルバー(BBB
)、ダブルバー(BB
)、シングルバー(B
)、チェリー(C
)、ゼロ(0
)というよく使われているスロットマシンシンボルのグループから3つのシンボルを生成します。シンボルはランダムに選択され、個々のシンボルが現れる確率はそれぞれ異なっています。
get_symbols <- function() { wheel <- c("DD", "7", "BBB", "BB", "B", "C", "0") sample(wheel, size = 3, replace = TRUE, prob = c(0.03, 0.03, 0.06, 0.1, 0.25, 0.01, 0.52)) }
get_symbols
を使えば、スロットマシンで使われるシンボルを生成できます。
get_symbols() ## "BBB" "0" "C" get_symbols() ## "0" "0" "0" get_symbols() ## "7" ...
Get RStudioではじめるRプログラミング入門 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.