Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Chia khoảng số thành số khoảng cụ thể trong JavaScript


Giả sử chúng ta có một khoảng luôn bắt đầu từ 0 và kết thúc tại một số nguyên dương n, ký hiệu khoảng bằng mảng như sau:

const interval = [0, n];

Hoặc đơn giản hơn, vì我们知道 khoảng luôn bắt đầu từ 0, hãy ký hiệu khoảng chỉ bằng giới hạn trên:

const interval = n;

Chúng ta cần viết một hàm JavaScript nhận vào hai số làm đối số thứ nhất và thứ hai. Đối số đầu tiên đại diện cho khoảng bắt đầu từ 0 và kết thúc tại số đó. Số thứ hai xác định số lượng khoảng bằng nhau (nếu có thể) cần tạo ra trong khoảng thực tế.

Ví dụ: Nếu các đối số đầu vào là 3 và 2.

Thì khoảng thực tế là [0, 3] = [0, 1, 2, 3] và chúng ta phải chia thành 2 khoảng bằng nhau (nếu có thể).

Do đó, với các đầu vào này đầu ra sẽ là:

const output = [ [0, 1], [2, 3] ];

Lưu ý rằng giới hạn trên và dưới của các khoảng luôn là số nguyên.

Ví dụ

const getIntervals = (interval, num) => { 
  const size = Math.floor(interval / num); 
  const res = []; 
  for (let i = 0; i <= interval; i += size) { 
    const a = i === 0 ? i : i + 1; 
    const b = i + size > interval ? interval : i + size; 
    if (a < interval) res.push([a, b]); 
  } 
  return res; 
}; 
console.log(getIntervals(3, 2));

Kết quả

Kết quả hiển thị trong console sẽ là:

[ [0, 1], [2, 3] ]