Обработка парных и непарных чисел

Определите чётность обоих чисел через остаток от деления на 2. Для двух чётных верните произведение, для двух нечётных сумму, иначе — нечётный аргумент.

Короткий ответ

Что ответить на собеседовании

Определите чётность обоих чисел через остаток от деления на 2. Для двух чётных верните произведение, для двух нечётных сумму, иначе — нечётный аргумент.

Подробный разбор

Ответ с пояснениями

Условие

Функция принимает два целых числа a и b.

  • Если оба числа чётные, функция возвращает их произведение.
  • Если оба числа нечётные, функция возвращает их сумму.
  • Если одно число чётное, а другое нечётное, функция возвращает нечётное число.

Ответ

Определите чётность обоих чисел через остаток от деления на 2. Для двух чётных верните произведение, для двух нечётных сумму, иначе — нечётный аргумент.

function combine(a, b) {
  if (!Number.isInteger(a) || !Number.isInteger(b)) throw new TypeError('Нужны целые числа');
  const evenA = a % 2 === 0, evenB = b % 2 === 0;
  if (evenA && evenB) return a * b;
  if (!evenA && !evenB) return a + b;
  return evenA ? b : a;
}

Проверка нечётности через !== 0 работает и для отрицательных значений; сравнение остатка с 1 их пропустило бы. Ноль считается чётным. Для больших целых вне точности Number следует выбрать BigInt и соответствующие литералы.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее