Quantcast
Channel: プログラミング
Viewing all articles
Browse latest Browse all 8562

C# 期待値を算出する方法(離散型確率変数) - Web系開発メモ

$
0
0

C#を使って、離散型確率変数の期待値を計算する方法を書いていきます。

目次

  1. コード例
  2. 確率が同じ場合

1. コード例

コード例は以下の通りです。

// 確率変数と確率int[] vs = { 0, 1 };
double[] ps = { 0.5, 0.5 };

// 期待値を算出double e =0d;
for (int i =0; i < vs.Length; i++) {
  e += vs[i] * ps[i];
}

// 出力
Console.WriteLine(e);  // 0.5
Console.ReadKey();

2. 確率が同じ場合

上の例やサイコロの目ように、確率が同じ場合は、以下のコードでも大丈夫だと思います。

// 確率変数と確率int[] vals = { 1, 2, 3, 4, 5, 6 };
double p =1d/ vals.Length;

// 期待値を算出double e =0d;
foreach (var v in vals) {
  e += v * p;
}

// 出力
Console.WriteLine(e);  // 3.5
Console.ReadKey();

Viewing all articles
Browse latest Browse all 8562

Trending Articles