- 611 名前:デフォルトの名無しさん mailto:sage [2005/07/23(土) 02:10:26 ]
- >>608
>>589 をそのまま実装すると (define (pow2 x n) (if (= n 0) 1 (let ((x1 (pow2 x (quotient n 2)))) (* x1 x1 (if (even? n) 1 x))))) x^n * x^n = (x * x)^n だから (define (pow2 x n) (if (= n 0) 1 (* (pow2 (* x x) (quotient n 2)) (if (even? n) 1 x)))) 末尾再帰に変換して >>607
|

|