﻿import numpy as np  # モジュールNumpyをnpという名前でインポート
n = 100000  # 試行回数
np.random.seed(1)  # 乱数のシード値を固定
X = np.random.rand(n)  # U(0,1)に従う乱数をn個生成し，Xに代入
Y = (2 - 2 * X) * np.random.rand(n)  # U(0,2-2X)に従う乱数をn個作成し，Yに代入
# 確率を表示
print(sum(Y >= 1) / n)  # モンテカルロ法 
print(1/2 * (1 - np.log(2)))  # 参考：理論値