Cấp số cộng:
Cấp số cộng (AP) là dãy số mà hiệu giữa các số hạng liên tiếp là hằng số. Ví dụ: 5, 7, 9, 11, 13...
Cho mảng biểu diễn các phần tử của cấp số cộng theo thứ tự, nhưng thiếu một số. Cần viết hàm JS nhận mảng đó, trong một lần lặp tìm và trả về số bị thiếu.
Ví dụ:
Nếu mảng đầu vào:
const arr = [7, 13, 19, 31, 37, 43];
Kết quả:
const output = 25;
vì 25 bị thiếu giữa 19 và 31.
Ví dụ
Mã thực hiện:
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));
Kết quả
Kết quả in ra console:
25