Задать вопрос
@Roman9333
React.js developer

Как выявить есть ли арифметическая или геометрическая прогрессия в массиве?

Есть задача: выявить есть ли в массиве геометрическая или арифметическая прогрессия. Если есть - вывести соответственно arifmetic/geometric, если нету вывести -1. Массив отсортирован.
  • Вопрос задан
  • 639 просмотров
Подписаться 1 Простой 3 комментария
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const isArithmeticProgression = arr =>
  !!arr.length && arr.every((n, i, a) => !i || (n - a[i - 1] === a[1] - a[0]));

const isGeometricProgression = arr =>
  !~-new Set(arr.map((n, i, a) => (i = i || 1, a[i] / a[~-i] || 0))).size;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы