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

修正1 5/20

# 余弦(近似) Cosine Approximation
# 引数 値 ($x)
# 戻り値 余弦(ラジアン) ($CosineApproximation)
sub COSINE{
my ($x) = @_;
my $CosineApproximation = 0;
my $Sum = 0;
my $X = abs($x);
my $Sign = 0;
my $Num = 0;
my $Factorial = 1;
my $Pi = atan2(1, 1) * 4;
my $Radian2Pi = 2 * $Pi;
my $Expansion = 20;

# 360度以上
if($X >= $Radian2Pi){
$X = $X - (int($X / $Radian2Pi) * $Radian2Pi);
}

for(my $i = 0; $i <= $Expansion; $i++){
# 符号
$Sign = (($i % 2) == 0 ? 1: -1);
# 分子
$Num = $X ** (2 * $i);

if($i != 0){
# 分母 階乗
for(my $j = 2 * $i; $j > (2 * ($i - 1)); $j--){
$Factorial = $Factorial * $j;
}
}

$Sum += $Sign * ($Num / $Factorial);
}

# 余弦(近似) Cosine
$CosineApproximation = $Sum;

return $CosineApproximation;
}


参考URL
テイラー展開 - Wikipedia

修正1 5/20
誤差ではなく項で打ち切り
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

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

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

検索フォーム


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