Переключение лампочек в JavaScript: несколько способов решения проблемы

Я могу помочь вам с проблемой «переключения лампочек» в JavaScript. Вот несколько методов, которые вы можете рассмотреть:

  1. Использование логических переменных. Вы можете представить состояние каждой лампочки, используя логические переменные. Первоначально инициализируйте все лампочки в положение «выкл.» (ложь). Затем для каждой операции переключения вы можете просто переключать состояние лампочек.
// Initialize all bulbs to "off"
let bulbs = Array(100).fill(false);
// Switching operation
function switchBulbs(n) {
  for (let i = n - 1; i < bulbs.length; i += n) {
    bulbs[i] = !bulbs[i];
  }
}
  1. Использование массива. Вы можете использовать массив для представления состояния каждой лампочки. Первоначально установите все лампы в положение «выкл.» (0). Для каждой операции переключения выполните итерацию по массиву и переключите состояние лампочек в положениях, кратных номеру переключателя.
// Initialize all bulbs to "off"
let bulbs = Array(100).fill(0);
// Switching operation
function switchBulbs(n) {
  for (let i = n - 1; i < bulbs.length; i += n) {
    bulbs[i] = (bulbs[i] === 0) ? 1 : 0;
  }
}
  1. Использование битовых манипуляций: вы можете использовать побитовые операции XOR для переключения состояния каждой лампочки. Первоначально инициализируйте все лампы в положение «выкл.» (0). Для каждой операции переключения выполните побитовую операцию XOR над состоянием лампочки.
// Initialize all bulbs to "off"
let bulbs = 0;
// Switching operation
function switchBulbs(n) {
  for (let i = n - 1; i < 100; i += n) {
    bulbs ^= (1 << i);
  }
}

Это всего лишь несколько подходов к решению проблемы «переключения лампочки» в JavaScript. Вы можете выбрать метод, который лучше всего соответствует вашим потребностям.