산술 진행:
산술 진행(AP) 또는 산술 수열은 연속된 항 간의 차이가 일정하도록 하는 일련의 숫자입니다.
예를 들어, 시퀀스 5, 7, 9, 11, 13...
산술 진행의 요소를 순서대로 나타내는 배열이 있다고 가정합니다. 그러나 어떻게 든 진행에서 숫자 중 하나가 사라집니다. 이러한 배열을 첫 번째이자 유일한 인수로 사용하는 JavaScript 함수를 작성해야 합니다.
그런 다음 우리 함수는 한 번의 반복으로 시퀀스에서 누락된 숫자를 찾아 반환해야 합니다.
예를 들어 -
입력 배열이 -
인 경우const arr = [7, 13, 19, 31, 37, 43];
그러면 출력은 다음과 같아야 합니다. -
const output = 25;
19와 31 사이에 25가 없기 때문에
예시
이에 대한 코드는 -
const arr = [7, 13, 19, 31, 37, 43]; const findMissingNumber = (arr = []) => { let {length} = arr; let diff1 = arr[1] - arr[0]; let diff2 = arr[length - 1] - arr[length - 2]; if (diff1 !== diff2) { if (diff1 == 2 * diff2){ return arr[0] + diff2; }else{ return arr[length - 1] - diff1; }; }; for (let i = 1; i < length - 2; i++){ if (arr[i + 1] - arr[i] != diff1){ return arr[i] + diff1; }; }; return arr[0]; }; console.log(findMissingNumber(arr));
출력
콘솔의 출력은 -
25