メインコンテンツへスキップ
見出し画像

高校数学10分プログラミング(数学B編 4.確率分布と統計的な推測)6日目「確率変数の和と積を考える1」解説

    マガジンリスト > 数学B編 4.確率分布と統計的な推測 > 6日目 解説

    本日の課題、おつかれさまでした。

    課題の確率変数XXとYYの和に対する期待値、分散及び標準偏差を求めるプログラムを作成することができたでしょうか。


    解答例

    今回の課題の、同時分布を用いて確率変数の和の期待値と標準偏差を求めるプログラムの例を示します。

    // 10円硬貨1枚と100円硬貨1枚を同時に投げるとき、
    // 表の出た硬貨の金額の和の期待値と標準偏差を求める。
    // 同時分布を利用
    void setup(){
    
      int a = 10; // 10円
      int b = 100; // 100円 
    
      // 同時分布P
      float[][] p = {{1.0/4.0,1.0/4.0},{1.0/4.0,1.0/4.0}};
    
      // 同時分布による期待値の計算
      float m = 0.0;
      for(int x=0; x<=1; x++){ // 10円硬貨の裏(0)、表(1)
        for(int y=0; y<=1; y++){ // 100円硬貨の裏(0)、表(1)
          m = m + (a*x+b*y)*p[x][y];
        }
      }
      
      // 同時分布による分散の計算
      float v = 0;
      for(int x=0; x<=1; x++){ // 10円硬貨の裏(0)、表(1)
        for(int y=0; y<=1; y++){ // 100円硬貨の裏(0)、表(1)
          v = v + (a*x+b*y-m)*(a*x+b*y-m)*p[x][y];
        }
      }
      
      // 同時分布による標準偏差の計算
      float sigma = sqrt(v);
    
      // 期待値、分散、標準偏差の値をコンソールに出力
      println("期待値 :", m);
      println("分散  :", v);
      println("標準偏差:", sigma);
    }

    ソースコード2 同時分布を用いて確率変数の和の期待値と標準偏差を求めるプログラム(完成版)

    ソースコード2を、Processing の開発環境ウィンドウを開いて(スケッチ名を「SumofProbabilityVariables」とします)、テキストエディタ部分に書いて実行すると、コンソールに

    期待値 : 55.0
    分散  : 2525.0
    標準偏差: 50.24938

    と出力されます(図1)。

    画像
    図1 スケッチ「SumofProbabilityVariables」の実行結果


    本日は以上です。
    明日は、確率変数の独立性を用いて確率変数の和と積の期待値、分散、標準偏差について考えていきます。

    明日もよろしくお願いします。


    読んだ感想などをお寄せください

    本記事を読んだ感想や質問などを以下のお問い合せフォームからお寄せください。(お問合せフォームの本文に、本記事のタイトルを入れてください。)


    MK’s papa


     
     
    ソフトウェア開発会社に勤めて20年。ソフトウェア開発だけでなく、50名以上の新入社員の育成などにも携わり、プログラミングができる人とできない人との違いは高校数学の理解度であることがわかりました。プログラミングを通して高校数学(同時に情報Iも)の理解を深めていきましょう。

    あなたへのおすすめ