재귀 만 사용하여 다음 중첩 루트 식을 계산하라는 요청을 받았습니다 .
나는 아래 코드를 작성했지만 효과가 있었기 때문에 하나의 함수 와 하나의 입력 만 사용n
하고 2는 사용하지 않았습니다. 누군가이 코드를 표현식을 계산하는 하나의 함수로 변환하도록 도울 수 있습니까? 의 함수를 제외한 모든 라이브러리를 사용할 수 없습니다 <math.h>
.
n = 10에 대한 출력 : 1.757932
double rec_sqrt_series(int n, int m) {
if (n <= 0)
return 0;
if (m > n)
return 0;
return sqrt(m + rec_sqrt_series(n, m + 1));
}
double helper(int n) {
return rec_sqrt_series(n, 1);
}
abort()
(부터 <stdlib.h>
)를 호출하고 자동으로 0을 반환하지 않습니다.
double nested_root(unsigned n) { double x = 0.0; if (n > 0) { x = nested_root(0); for (unsigned i = n; i > 0; i--) { x = sqrt(i + x); } } return x; }
helper
?