Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript의 피보나치 수열

<시간/>

다음 정의를 사용하여 시퀀스를 정의합시다 -

항 t1 및 t2, 이 수열의 두 연속 항이 주어지면 이 수열의 세 번째 항은 -

t3 = t1 + (t2 * t2)

피보나치 수열과 마찬가지로 이 수열의 처음 두 항은 항상 각각 0과 1입니다.

n과 같이 숫자를 받는 JavaScript 함수를 작성해야 합니다. 그런 다음 함수는 위에서 설명한 시퀀스의 n번째 항을 계산하고 반환해야 합니다.

예를 들어 - n =6이면

t6 = 27

시퀀스가 -

이기 때문에
0 1 1 2 5 27

예시

이에 대한 코드는 -

const num = 6;
const findSequenceTerm = (num = 1) => {
   const arr = [0, 1];
   while(num > arr.length){
      const last = arr[arr.length − 1];
      const secondLast = arr[arr.length − 2];
      arr.push(secondLast + (last * last));
   };
   return arr[num − 1];
};
console.log(findSequenceTerm(num));

출력

콘솔의 출력은 -

27