Друзья, пишите свои решения в комментариях! Чем больше будет таких решений и чем они будут разнообразнее, тем больше пользы они принесут всем, тем успешнее будут наши собеседования! Поделитесь, а на каких площадках тренируетесь вы?
Спасибо за задачу! Условие i % 3 === 0 && i % 5 === 0 можно объединить в одно i % 15 === 0. А учитывая, что мы во всех ветках вызываем conslole.log, то здесь напрашивается тернарный оператор: const fizzBuzz = num => { for (var i = 1; i
если добавить деление на семь, появляются паттерны на числовой прямой - горки от 48 до 57, от 153 до 162, от 258 до 267 etc. Как называется эта последовательность?
@@luckytima2315 ну в школе и интегралы учат, и матрицы начинают разбирать. А потом джуны не могут даже умножить два числа в уме))) Всякое бывает, нормальная задача. Хоть и легкая
@@Екатерина-ч6ж7ъ Ну интегралы это 11 класс :)) А тут 8 :D В любом случае Сергей самый лучший в плане фронта , и вообще дает самую ценую информацию в плане фронта !)
Хотя вы и объяснили, но все равно не понял почему нельзя написать !(num % 3 && num % 5) в конце проверок, можете объяснить или скинуть ссылку на ваш урок или сторонний ресурс
например число 15 - оно делится одновременно и на 3 и на 5 - поэтому мы должны получить FizzBuzz. Если мы поставим проверку на делеение на 3 и на 5 в конец. То вначале у нас отработает проверка делится ли это число на 3 - оно делится, и просто выведется Fizz и все - выполнение перейдет к следующему числу. Поэтому проверку num % 3 && num % 5 мы ставим в начало
На код варс, на початку(далі хз) майже всі задачі, прямо таки просять тебе юзати регулярні вирази....а я не шарю регулярні вирази). Задача із відео була не складна(на щастя), але доки я не додав на кожен if, continue - в мене консолилось і фіз/баз/фізбаз і число, або взагалі все разом по черзі. Тобто наприклад число 15, консоль буде така: fizzbuzz; buzz; fizz; 15 - адже усі перевірки число проходить. Правда я це все пушив у массив і консолив його.
Можно упростить первое сложное условие. Если число делится без остатка на два взаимно простых числа, то оно будет делится и на их произведение. Таким образом для вывода fizzbuzz можно сразу проверять деление на 15! function fizzBuzz(number) { for (let i=1; i
Благодарю за решение! Это действительно очень простая задача для начинающих. Если хочется задач посложнее - у нас их есть на канале. (Плейлист - Задачи с собеседований)
ну ну, удачи на собесе рассказать решение на 100500 строк с возможностью расширения в бесконесность задача просто на соображалку, в реальных проектах такого нет
давайте хто напише цю задачу щоб було якнайменше коду, без ліб) у мене вийшло 77 - щоб отримати масив, [...Array(22).keys()].map(z=>z+1).map(z=>(z%3?"":"fizz")+(z%5?"":"buzz")||z) 95 - щоб вивести в консоль) [...Array(22).keys()].map(i=>i+1).map(x=>console.log(((x%3?'':'fizz') + (x%5?'':'buzz')) || x))
Не вижу ничего крутого. Код вообще не читается. Более того лишние обходы массива, когда всё решается в один цикл, как показал Сергей. Мартин Фаулер сказал: "Любой дурак может написать код, понятный компьютеру. Хороший программист пишет код, понятный человеку."
Саша, за оскорбление жирный минус в карму и китайское предупреждение. Идея Vasyl Romanchak действительно крутая! Это челендж и это показывает уровень профессионализма, знания основы языка, а также недокументированных скрытых его особенностей. И понятно, что в продакшн такой код никто никогда не выкладывает, но тренировать такое умение супер круто!
@@alexnikolskiy, у нас на канале любые оскорбления, завуалированные или прямые, запрещены, даже если Вы не согласны с чьим-то решением. Любое решение расширяет кругозор и обогащает арсенал разработчика. Мы здесь за доброжелательную и уважительную среду!
Серёжа, причём здесь оскорбление? Я никого не оскорблял и не думал даже. Я процитировал известного программиста, автора кучи крутых книг, на одной из которых на обложке именно эта цитата. Хочешь сказать Мартин Фаулер всех оскорбил? А по поводу челенджа, ну это спорно. Мы же тут обсуждаем задачки на собеседованиях. А на собеседованиях ждут кода, который ты будешь писать на продакшн и максимально эффективно. Потому пользы от такого челенджа я не вижу. Ну это моё мнение. Могу ошибаться. Сорян если вдруг кого ненароком обидел
Я оказывается не так понял задачу и решил так, и у меня вопрос const fizz =(num)=>{ return !(num % 3) ? console.log('fizz') : !(num % 3 && num % 5) ? console.log('fizz buzz') : console.log(num)
} Почему второе условие когда пишу !(num % 3 && num % 5) не работает, попробовал еще так !(num % 3 && 5) и так (num % 5 === 0 && num % 3 ===0) но, другое условие внутри скобки работает
ааа, понял, только что посмотрел видео. У меня вообще какие то странности, раньше то и делал что теорию слушал, от прототипов, итераторов и генераторов, proxy, object define property до преобразование в бинарный код и как работает процессор. Раньше вообще не мог делает практику, то и делал что слушал теорию, теперь понял что не могу решить элементарные задачи с массивами, теперь навёрстываю упущенное и кажется перестарался)))
@Vasyl Romanchak вызов принят:
63 c console.log:
for(i=0;i
Це код виклику сатани?)
Друзья, пишите свои решения в комментариях! Чем больше будет таких решений и чем они будут разнообразнее, тем больше пользы они принесут всем, тем успешнее будут наши собеседования!
Поделитесь, а на каких площадках тренируетесь вы?
Классная музычка Сереж) Спасибо! Давно подписан
спасибо за полезнейший видос!
И Вам спасибо! Рады стараться!
Спасибо за задачу!
Условие i % 3 === 0 && i % 5 === 0 можно объединить в одно i % 15 === 0. А учитывая, что мы во всех ветках вызываем conslole.log, то здесь напрашивается тернарный оператор:
const fizzBuzz = num => {
for (var i = 1; i
если добавить деление на семь, появляются паттерны на числовой прямой - горки от 48 до 57, от 153 до 162, от 258 до 267 etc. Как называется эта последовательность?
красава!
Да, известная задача, но довольно простая, решил ещё также. Это на джуна? Может посложнее расмотреть задачки?
Будет и и! Если есть конкретные задачки, высылай!
Джуна ? Это 8 класс с урока информатике ^^
@@luckytima2315 ну в школе и интегралы учат, и матрицы начинают разбирать. А потом джуны не могут даже умножить два числа в уме)))
Всякое бывает, нормальная задача. Хоть и легкая
@@Екатерина-ч6ж7ъ Ну интегралы это 11 класс :)) А тут 8 :D В любом случае Сергей самый лучший в плане фронта , и вообще дает самую ценую информацию в плане фронта !)
Хотя вы и объяснили, но все равно не понял почему нельзя написать !(num % 3 && num % 5) в конце проверок, можете объяснить или скинуть ссылку на ваш урок или сторонний ресурс
например число 15 - оно делится одновременно и на 3 и на 5 - поэтому мы должны получить FizzBuzz. Если мы поставим проверку на делеение на 3 и на 5 в конец. То вначале у нас отработает проверка делится ли это число на 3 - оно делится, и просто выведется Fizz и все - выполнение перейдет к следующему числу. Поэтому проверку num % 3 && num % 5 мы ставим в начало
@@frontendscience Спасибо большое, не знаю почему, но в видео объяснение не понял.
Теперь все понятно!
function fizzBuzz(num) {
for (let i = 1; i
Изначально также видел решение, более красивое и компактное
Только в консоль выводить не "num" , a "i" (str || i )
На код варс, на початку(далі хз) майже всі задачі, прямо таки просять тебе юзати регулярні вирази....а я не шарю регулярні вирази).
Задача із відео була не складна(на щастя), але доки я не додав на кожен if, continue - в мене консолилось і фіз/баз/фізбаз і число, або взагалі все разом по черзі. Тобто наприклад число 15, консоль буде така: fizzbuzz; buzz; fizz; 15 - адже усі перевірки число проходить.
Правда я це все пушив у массив і консолив його.
Простая задача, ждал подвоха, но его не оказалось.
Да, это начальный уровень. Если хотите посложнее, переходите дальше по плейлисту: ua-cam.com/play/PL0k-9Y7O1GwccXKHRzmvVj17yB7T9pjTo.html
Можно упростить первое сложное условие. Если число делится без остатка на два взаимно простых числа, то оно будет делится и на их произведение. Таким образом для вывода fizzbuzz можно сразу проверять деление на 15!
function fizzBuzz(number) {
for (let i=1; i
В таком случае при 6 и 12 Ваше решение даст неверный результат.
Когда задача так проста, ждешь подвоха)))
Ну ок:
function fizzBuzz(myInput){
let result = "";
for(let i = 1; i
Благодарю за решение!
Это действительно очень простая задача для начинающих.
Если хочется задач посложнее - у нас их есть на канале. (Плейлист - Задачи с собеседований)
После видео соера, такое решение кажется совсем уж несерьезным
А вы думаете на собеседовании от вас ожидают решение в ООП стиле? Это очень простая задача на junior позиции.
ну ну, удачи на собесе рассказать решение на 100500 строк с возможностью расширения в бесконесность
задача просто на соображалку, в реальных проектах такого нет
@@useit1 Ну как бы да, для ООП дают другого уровня задачи на собеседованиях, а не Fizzbuzz - эта совсем для разминки и мудрить ее не надо.
function fizzBuzz(num) {
for(let i=1; i
давайте хто напише цю задачу щоб було якнайменше коду, без ліб)
у мене вийшло 77 - щоб отримати масив,
[...Array(22).keys()].map(z=>z+1).map(z=>(z%3?"":"fizz")+(z%5?"":"buzz")||z)
95 - щоб вивести в консоль)
[...Array(22).keys()].map(i=>i+1).map(x=>console.log(((x%3?'':'fizz') + (x%5?'':'buzz')) || x))
Крутая идея!
Не вижу ничего крутого. Код вообще не читается. Более того лишние обходы массива, когда всё решается в один цикл, как показал Сергей.
Мартин Фаулер сказал: "Любой дурак может написать код, понятный компьютеру. Хороший программист пишет код, понятный человеку."
Саша, за оскорбление жирный минус в карму и китайское предупреждение. Идея Vasyl Romanchak действительно крутая! Это челендж и это показывает уровень профессионализма, знания основы языка, а также недокументированных скрытых его особенностей. И понятно, что в продакшн такой код никто никогда не выкладывает, но тренировать такое умение супер круто!
@@alexnikolskiy, у нас на канале любые оскорбления, завуалированные или прямые, запрещены, даже если Вы не согласны с чьим-то решением. Любое решение расширяет кругозор и обогащает арсенал разработчика. Мы здесь за доброжелательную и уважительную среду!
Серёжа, причём здесь оскорбление? Я никого не оскорблял и не думал даже. Я процитировал известного программиста, автора кучи крутых книг, на одной из которых на обложке именно эта цитата. Хочешь сказать Мартин Фаулер всех оскорбил? А по поводу челенджа, ну это спорно. Мы же тут обсуждаем задачки на собеседованиях. А на собеседованиях ждут кода, который ты будешь писать на продакшн и максимально эффективно. Потому пользы от такого челенджа я не вижу. Ну это моё мнение. Могу ошибаться. Сорян если вдруг кого ненароком обидел
godno
Я оказывается не так понял задачу и решил так, и у меня вопрос
const fizz =(num)=>{
return !(num % 3) ? console.log('fizz') : !(num % 3 && num % 5) ? console.log('fizz buzz') : console.log(num)
}
Почему второе условие когда пишу !(num % 3 && num % 5) не работает, попробовал еще так
!(num % 3 && 5)
и так
(num % 5 === 0 && num % 3 ===0)
но, другое условие внутри скобки работает
ааа, понял, только что посмотрел видео.
У меня вообще какие то странности, раньше то и делал что теорию слушал, от прототипов, итераторов и генераторов, proxy, object define property до преобразование в бинарный код и как работает процессор.
Раньше вообще не мог делает практику, то и делал что слушал теорию, теперь понял что не могу решить элементарные задачи с массивами, теперь навёрстываю упущенное и кажется перестарался)))