2013年3月28日木曜日

開発環境

『初めてのJavaScript 第2版』(シェリー・パワーズ著(Shelley Powers著)、武舎 広幸+武舎 るみ訳、オライリー・ジャパン、2009年、ISBN978-4-87311-425-5) の5章(関数)練習問第5-1.を解いてみる。

その他参考書籍

1.

コード(BBEdit)

var calcFactorialRecursively = function ( n ) {
    if ( n <= 1 ) {
        return 1;
    }
    return n * calcFactorialRecursively(n - 1);
},
    calcFactorialWithLoop = function ( n ) {
        var result = 1,
            i;
        for (i = 2; i <= n; i += 1) {
            result *= i;
        }
        return result;
    },
    result = "",
    i;
for (i = 0; i <= 10; i += 1) {
    result += calcFactorialRecursively(i) + "\n" +
        calcFactorialWithLoop(i) + "\n";
}
$('#pre0').text(result);



ちなみにPython3.3の場合。

コード(BBEdit)

sample.py

#!/usr/bin/env python3.3
# -*- coding: utf-8 -*-

def calcFactorialRecursively( n ):
    if n <= 1:
        return 1
    return n * calcFactorialRecursively(n - 1)

def calcFactorialWithLoop( n ):
    res = 1
    for x in range(2, n + 1):
        res *= x
    return res

for x in range(11):
    print(calcFactorialRecursively(x), 
        calcFactorialWithLoop(x), sep="\n")

入出力結果(Terminal)

$ ./sample.py
1
1
1
1
2
2
6
6
24
24
120
120
720
720
5040
5040
40320
40320
362880
362880
3628800
3628800
$

0 コメント:

コメントを投稿