出展:パーソナルソフトウェア技法 Watts S. Humphrey 著 ISBN4-320-02929-1

PSP課題 09A_VB : 正規分布性の検証

前提条件

10章までと A6 節と課題 08A_VB

要求

ファイルから読込み、要素を double(3) として、リンクリストに格納せよ。 第1行目で指定された列の正規分布している度合いを計算し出力せよ。 リストの個数は、10の倍数で、50以上とする。(プログラムでチェックせよ)
ベースは prob/C05_08A_VB とせよ。

テスト

入力ファイル期待される出力
テスト109A_VB_test_1.xml結果1
第1行目が 2の場合、3列目を表す。

参考

正規分布の度合いの計算では、元データに対し、平均を引いて標準偏差で割って正規化し、さらにソートせよ。 正規分布の面積が10(=s)等分になるような分割で、 データが各々に入る個数を k_i とする(i=0..9)。
nn = n / s<br/>
Q = sum_i((nn-k_i)*(nn-k_i) / nn)
f(x,n) := 1 / 2^(n/2) / Γ(n/2) * integral_0_x(u^((n/2)-1) * exp(-u/2)) du
p = f(Q,s-1)
N(0,1) において
P(x>0.253) = 0.4
P(x>0.524) = 0.3
P(x>0.842) = 0.2
P(x>1.282) = 0.1

解答例