@WarriorKodeK

Как создать массив чисел, которые увеличиваются с каждой итерацией?

Всем привет.
Как создать массив с 10 чисел, логика заполнения у которого такая:

1. Есть допустим число 3
3 умножается на 2, а все следущие числа это прошлое число + 3
То есть:
[6, 9, 12, 15, 18, 21, 24, 27, 30, 33] --------> [3 * 2, 6 + 3, 9 + 3, 12 + 3, 15 + 3, 18 + 3, 21 + 3, 24 + 3, 27 + 3, 30 + 3]


Пробую делать вот так:
Array.from(Array(10), (_, i) => {
                let currentNumber = 3 * 2;
                if (i === 0) {
                  return { label: currentNumber, value: currentNumber };
                } else {
                  currentNumber += 3;
                  return { label: currentNumber, value: currentNumber };
                }
              })
  • Вопрос задан
  • 178 просмотров
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
const arithmeticProgression = ({ length, a1 = 0, d = 1 }) =>
  Array.from(
    { length },
    (n, i) => a1 + i * d
  );


const arr = arithmeticProgression({
  length: 10,
  a1: 6,
  d: 3,
});

или

function* arithmeticProgression(a1, d, length) {
  for (let i = 0; i < length; i++) {
    yield a1 + i * d;
  }
}


for (const n of arithmeticProgression(100, 10, 5)) {
  console.log(n);
}

console.log(Array.from(arithmeticProgression(10, -7, 10)));
Ответ написан
Комментировать
sergiks
@sergiks Куратор тега JavaScript
♬♬
Array(10).fill().map((_, i) => (i + 2) * 3)

Сможете объяснить решение?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы