# パッケージがインストール済なら次の行は不要
# import Pkg; Pkg.add("Statistics")
using Statistics
import Random  # 乱数を扱うためのモジュールをインポート
n = 100000  # 試行回数
X = zeros(n)  # 表が出る1円硬貨の合計金額を格納する配列
Y = zeros(n)  # 表が出る5円硬貨の合計金額を格納する配列
Random.seed!(1)  # 乱数のシード値を固定
for i in 1:n
    coin_1 = rand(0:1, 10)  # 1円硬貨10枚を同時に投げた結果
    X[i] = sum(coin_1)  # 表が出た1円硬貨の合計金額
    coin_5 = rand(0:1, 3)  # 5円硬貨3枚を同時に投げた結果
    Y[i] = sum(coin_5) * 5  # 表が出た5円硬貨の合計金額
end
Z = X + Y  # 表が出た硬貨の合計金額
# 分散V(Z)を表示
println(var(Z))  # モンテカルロ法
println(85/4)  # 参考：理論値
# 期待値E(XY^2)を表示
println(mean(X .* Y .* Y))  # モンテカルロ法
println(375)  # 参考：理論値