본문 바로가기

LISP?

부분분수 수열의 합을 구하는 lisp 식

일반항: 1/n(n+2)

1) 합의 시그마식: i=a 에서 b까지 시그마 1/i(i+2)

ex)
1/1*3 + 1/2*4 + 1/3*5 + .... + 1/n(n+2)

(defun pi-sum (a b)
    (if (> a b)
        0
        (+ (/ 1 (* a (+ a 2)))
            (pi-sum (+ a 1) b))))



1) 합의 시그마식: i=a 에서 b까지 시그마 1/i(i+2) 단 가 4씩 거지는 경우)

ex)
1/1*3 + 1/5*7 + 1/9*11 + .... + 1/n(n+2)

(defun pi-sum (a b)
    (if (> a b)
        0
        (+ (/ 1 (* a (+ a 2)))
            (pi-sum (+ a 4) b))))




패턴

(defun <name> (a b)
    (if (> a b)
    0
    (+ (<term> a)
        (<name> (<next> a) b))))


-----------------------------

(defun sum (term A next B)
   (if (> A B)
       0
       (+ (term A)
           (sum term (next A) next B))))