@puffy859

Как решить задачу по JS?

Только начал учиться. Ни в какую не поддается задача.
Проблема в том, что когда n нечетное, он выводит на один элемент массива больше, чем нужно.
Подскажите, как это исправить?
ЗАДАЧА
"Дано целое число n и два других значения. Функция valueRepeater должна создавать массив размером n, в который входят два других значения и они чередуются."
Мой код:
function valueRepeater (n, firstWord, secondWord) {
let result = []
for (let i = 0; i < n; i +=1){
    if (result.length < n ) {
        result.push(firstWord)
        result.push(secondWord)
    } 
    }
    return result
}
   
console.log (valueRepeater(5, 'blue', 'red'))
  • Вопрос задан
  • 278 просмотров
Решения вопроса 1
ProgrammerForever
@ProgrammerForever
Учитель, автоэлектрик, программист, музыкант
У вас элементы добавляются парами, что случайно срабатывает правильно на чётном n; при нечётном n это невозможно. Нужно добавлять элементы по одному, и такой проблемы не будет.
function valueRepeater (n, firstWord, secondWord) {
	let result = [];
	for (let i=0; i<n; i+=1){
		result.push(i%2===0?firstWord:secondWord);
	};
    return result;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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