Цель: создать функцию
fizzBuzz()
, которая возвращает массив из 100 элементов: кратные 3 заменяются на «Fizz», кратные 5 — на «Buzz», а кратные и 3, и 5 — на «FizzBuzz».
/**
* Функция FizzBuzz - классическая задача на проверку делимости чисел.
* Возвращает массив, где числа, кратные 3, заменены на "Fizz",
* кратные 5 - на "Buzz", а кратные и 3, и 5 (т.е. 15) - на "FizzBuzz".
* @returns {Array} Массив результатов по правилам FizzBuzz
*/
function fizzBuzz() {
// Создаем массив для хранения результатов
const result = [];
// Перебираем числа от 1 до 100 включительно
for (let i = 1; i <= 100; i++) {
// Проверяем делимость на 15 в первую очередь (чтобы избежать
// срабатывания условий для 3 или 5 по отдельности)
if (i % 15 === 0) {
result.push('FizzBuzz'); // Кратно и 3, и 5
}
// Если не кратно 15, проверяем кратность 3
else if (i % 3 === 0) {
result.push('Fizz'); // Кратно только 3
}
// Если не кратно ни 15, ни 3, проверяем кратность 5
else if (i % 5 === 0) {
result.push('Buzz'); // Кратно только 5
}
// Если не выполнилось ни одно из условий выше
else {
result.push(i); // Добавляем само число
}
}
// Возвращаем заполненный массив результатов
return result;
}
Почему именно так:
function fizzBuzz() {
const result = [];
for (let i = 1; i <= 100; i++) {
let str = '';
if (i % 3 === 0) str += 'Fizz';
if (i % 5 === 0) str += 'Buzz';
result.push(str || i);
}
return result;
}
Почему именно так:
function fizzBuzz() {
return Array.from({ length: 100 }, (_, idx) => {
const i = idx + 1;
let str = '';
if (i % 3 === 0) str += 'Fizz';
if (i % 5 === 0) str += 'Buzz';
return str || i;
});
}
Почему именно так:
Напишите функцию fizzBuzz
, которая возвращает массив длины 100 с заменами:
fizzBuzz()[2]; // "Fizz" (число 3)
fizzBuzz()[4]; // "Buzz" (число 5)
fizzBuzz()[14]; // "FizzBuzz" (число 15)
fizzBuzz
Цель: создать функцию
fizzBuzz()
, которая возвращает массив из 100 элементов: кратные 3 заменяются на «Fizz», кратные 5 — на «Buzz», а кратные и 3, и 5 — на «FizzBuzz».
/**
* Функция FizzBuzz - классическая задача на проверку делимости чисел.
* Возвращает массив, где числа, кратные 3, заменены на "Fizz",
* кратные 5 - на "Buzz", а кратные и 3, и 5 (т.е. 15) - на "FizzBuzz".
* @returns {Array} Массив результатов по правилам FizzBuzz
*/
function fizzBuzz() {
// Создаем массив для хранения результатов
const result = [];
// Перебираем числа от 1 до 100 включительно
for (let i = 1; i <= 100; i++) {
// Проверяем делимость на 15 в первую очередь (чтобы избежать
// срабатывания условий для 3 или 5 по отдельности)
if (i % 15 === 0) {
result.push('FizzBuzz'); // Кратно и 3, и 5
}
// Если не кратно 15, проверяем кратность 3
else if (i % 3 === 0) {
result.push('Fizz'); // Кратно только 3
}
// Если не кратно ни 15, ни 3, проверяем кратность 5
else if (i % 5 === 0) {
result.push('Buzz'); // Кратно только 5
}
// Если не выполнилось ни одно из условий выше
else {
result.push(i); // Добавляем само число
}
}
// Возвращаем заполненный массив результатов
return result;
}
Почему именно так:
function fizzBuzz() {
const result = [];
for (let i = 1; i <= 100; i++) {
let str = '';
if (i % 3 === 0) str += 'Fizz';
if (i % 5 === 0) str += 'Buzz';
result.push(str || i);
}
return result;
}
Почему именно так:
function fizzBuzz() {
return Array.from({ length: 100 }, (_, idx) => {
const i = idx + 1;
let str = '';
if (i % 3 === 0) str += 'Fizz';
if (i % 5 === 0) str += 'Buzz';
return str || i;
});
}
Почему именно так:
Напишите функцию fizzBuzz
, которая возвращает массив длины 100 с заменами:
fizzBuzz()[2]; // "Fizz" (число 3)
fizzBuzz()[4]; // "Buzz" (число 5)
fizzBuzz()[14]; // "FizzBuzz" (число 15)
fizzBuzz
Редактор кода намеренно скрыт на мобильном.
Поверь, так лучше: я оберегаю тебя от искушения писать код в неидеальных условиях. Маленький экран и виртуальная клавиатура — не лучшие помощники для программиста.
📖 Сейчас: Изучи задачу, продумай решение. Действуй как стратег.
💻 Потом: Сядь за компьютер, открой сайт и реализуй все идеи с комфортом. Действуй как код-джедай!