# パッケージがインストール済なら次の行は不要
# import Pkg; Pkg.add("StatsBase")
using StatsBase
import Random  # 乱数を扱うためのモジュールをインポート
n = 100000  # 試行回数
card = [2, 4, 4, 8, 8, 8]  # カードの番号
X = zeros(n)  # 取り出されたカードの番号の最小値を格納する配列
Random.seed!(1)  # 乱数のシード値を固定
for i in 1:n
    # カードを2枚取り出す (※非復元抽出)
    selected_cards = sample(card, 2, replace = false)
    X[i] = minimum(selected_cards)  # 2枚のカードの最小値をXに代入
end
# Xの平方根の期待値を表示
println(mean(sqrt.(X)))  # モンテカルロ法
println(11*sqrt(2)/15 + 14/15)  # 参考：理論値