Вывод каждого третьего числа начиная с 1 в Джава скрипте

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

function getDrinks(guests) {
  // write code here
  let sum = 0;
  for (i = 0; i <= guests; i++){
    sum += i;
  }
    return sum;
}

Теперь мне нужно, чтобы начиная с числа 1, выводились числа через 3 и добавлялись к сумме предыщущих. Например, если число 10, то дожна вывестись сумма чисел кратных через 3, то есть 1, 4, 7, 10, и сумма будет равнятся 22. Как мне для этого модернизировать предыдущий цикл в функции??????? Знаю, что нужно ввести второй параметр step.

function getDrinks(guests, step) {
  // write code here
  let sum = 0;
  for (i = 0; i <= guests; i++){
    sum += i;
  }
    return sum;
}

Ответы (1 шт):

Автор решения: StoneCountry

Можно использовать деление с остатком для проверки кратности i в текущей итерации:

function getDrinks(guests, step) {
  let sum = 0;
  // i = 0 изменено на i = 1, т.к. sum += 0 ничего не меняет
  // Добавление указанного шага к i
  for (i = 1; i <= guests; i+=step){
    sum += i;
  }
  return sum;
}

Большое спасибо Эникейщик за подсказку. Код был переработан. Шаг прибавляется к i на каждой итерации

→ Ссылка