고차 함수로 무한 연분수 구현
function ContinuectFraction(getD, getN, N) {
function recursiveF(Number) {
return N > Number
? getD(Number)
: getN(Number) / getD(Number) + recursiveF(Number + 1);
}
return recursiveF(1);
}
let getD = (n) => {
// n+1번째 분모 반환
return n + 1;
};
let getN = (n) => {
if (n === 0) {
return 2;
} else if (n % 3 === 2) {
return (n / 3 + 1) * 2;
} else {
return 1;
}
};
console.log(ContinuectFraction(getD, getN, 10));