FC2ブログ
最初
http://blog-imgs-36.fc2.com/a/m/a/amamiyaprog/MultinomialCoefficient1.txt

修正1

# 多項係数 Multinomial Coefficient
# 引数 数値 (\@NumericalValue)
# 戻り値 多項係数 ($MultinomialCoefficient)
sub MULTINOMIALCOEFFICIENT{
my ($NumericalValue) = @_;
my $MultinomialCoefficient = 1;
my @NaturalNumber = ();
my $Factorial = 1;
my $Highest = 1;
my $SumN = 0;
my $Count = @$NumericalValue - 1;

# 配列数の確認
if($Count < 0){
return 0;
}

# 値の確認
for(my $i = 0; $i <= $Count; $i++){
if($$NumericalValue[$i] < 0){
return 0;
}else {
$NaturalNumber[$i] = int($$NumericalValue[$i]);
$SumN += $NaturalNumber[$i];
}

# 最も高い数値を階乗の計算から除外
if($NaturalNumber[$i] > $Highest){
$Highest = $NaturalNumber[$i];
}
}

# 階乗
for(my $i = $SumN; $i > $Highest; $i--){
$Factorial = $Factorial * $i;
}

# 計算
for(my $i = $Count; $i >= 0; $i--){
if($NaturalNumber[$i] != $Highest){
for(my $j = $NaturalNumber[$i]; $j >= 2; $j--){
$Factorial = $Factorial / $j;
}
}else {
$Highest = 0;
}
}

# 多項係数 Multinomial Coefficient
$MultinomialCoefficient = $Factorial;

return $MultinomialCoefficient;
}


参考URL
MULTINOMIAL - Excel - Microsoft Office Online

修正1
変数名の変更 $N -> $NumericalValue
変数の扱い方
@N -> @$NumericalValue
$N -> $$NumericalValue
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

Author:雨宮
Firefoxを使用しているので気づかなかったけど、IE6でソースコードを上手くコピーできない

5/3
携帯用ならIE6でもソースコードをコピーできる
携帯用

検索フォーム


あわせて読みたいブログパーツ
一寸先は闇 RSS