おさかな日誌

魚類がプログラミング

JavaScriptで階乗計算してみる

前回の階乗計算プログラムがけっこう練習になったのでJavaScriptでも書いてみました。

/*function factorial(n) {
	if(n != 0) {
		return n * factorial(n -1);
	}
	return 1;
}*/
function factorial(n) {
	var result = 1;
	while (n > 1) {
		result = result * n;
		n--;
	}
	return result;
}

console.log(factorial(5));

コメントアウトしている所が再帰的関数呼び出しを使っている関数で、そうでないところがwhileループで計算しています。
どちらにせよ1000!とかは結果がinfinityとなって計算できませんでした。rubyのbignumってすごいんだな!