﻿rm(list = ls())  # ワークスペースをクリア
n <- 200000  # 試行回数
# ベクトルflagには，初めて6の目が出るまで全部偶数の目が出る場合は1を格納し，
# そうでない場合は0を格納する．
flag <- integer(n)                  
set.seed(1)  # 乱数のシード値を固定
for (i in 1:n) {
  x <- 0
  # 6の目または奇数の目が出るまでさいころを繰り返し投げる
  while (!x %in% c(6, 1, 3, 5)) {  
    x <- sample(1:6, 1)  # さいころの目
  }                              
  # 6の目が出てwhileが終了すればx=6
  if (x == 6) { 
    flag[i] <- 1 
  }
}
# モンテカルロ法で求めた確率を表示 (※参考：理論値は1/4)
sum(flag == 1) / n