10:44 

FizzBuzz

narical
Читал статью на хабре на тему собеседований на junior-разработчика.
В комментах люди делятся, как они сами проводили собеседования.
Один товарищ пишет: "За два года я встретил 1 человека, который смог мне показать свою учётку в Stack Overflow. Про github и хабр (подразумевается учётка на гитхабе и публикации на хабре) — молчу. Уже особо и не спрашиваю. В последнее время просто начинаю с Fizz Buzz. Не смог - сразу пока." По дальнейшим комментам выходит, что речь о заведомо лёгкой задаче, на которую иногда затрудняются написать рабочий код даже соискатели на вакансию senior developer.

Ну, у меня есть учётка на SO. Есть аккаунт на гитхабе и собственный проект на C++. Есть множество опубликованных статей на хабре )) А вот что такое Fizz Buzz?
Оказалось, это типовая задачка: надо вывести числа от 1 до 100, если число делится на 3, вместо него вывести Fizz, если на 5 - Buzz, если и на то и на другое - FizzBuzz.
Якобы народ беспощадно валится, в чем я убедился по примерам "решений" в комментариях к отдельной статье, посвященной этой задаче. Приведенная статистика утверждает, что 199 из 200 соискателей не могут написать работающий код (как я понимаю, с первой попытки, а то больно статистика нереальная).

Хабр я читал с телефона, лёжа под одеялом и почти засыпая. Но тут удержаться было невозможно - я вскочил, врубил комп, открыл текстовый документ и начал печатать. Не совсем уверен, что у меня получилось бы выдать рабочий код на бумажке - редактор подсказывал синтаксис, поэтому этого рода ошибок у меня не было. Но саму программу я написал без какого-либо труда за несколько минут, после чего она с первого раза скомпилировалась и выдала правильный результат. Ну и сам код я писал с учётом прочитанной книги Макконнела "Совершенный код".

upd: на первый взгляд кажется, что за конструкцию isDividedBy_3 = (i % 3 == 0 ? true : false) надо отрубить руки, тем не менее я бы настоял, что так проще для понимания кода, нежели более короткое isDividedBy_3 = (!(i % 3)). Мы же заботимся о тех, кто будет читать код? :)


upd2: а вот на уточнении задачи "решить в два if" я позорно слился. Попробовал решить сам, навскидку не смог. Так что не взяли бы меня на работу)) Я бы, конечно, думал бы больше и упирался бы сильнее, но надо понимать что и нагрузка на психику на собеседовании сильнее, волнуешься же.

URL
Комментарии
2017-03-06 в 20:36 

имбирный кот
книжный червяк
А вот что такое Fizz Buzz?
Оказалось, это типовая задачка: надо вывести числа от 1 до 100, если число делится на 3, вместо него вывести Fizz, если на 5 - Buzz, если и на то и на другое - FizzBuzz.
- забавно, у нас в средней школе игра была на уроках математики: всех ставили в линию и все по очереди числа называли. если число делится на три - прыгаешь и кричишь "физ", если на 5 - прыгаешь и орешь "баз". вот откуда ноги-то растут)

2017-03-06 в 21:16 

narical
имбирный кот, да, оттуда.

URL
2017-03-14 в 16:14 

Оссэ
Planet Earth is blue and there's nothing I can do
Когда я ещё занимался джавой, приятель подкинул мне эту задачу, и у меня была определённая трудность с пониманием тз.

В итоге вместо пары строк я написал прогу, которая запрашивала у пользователя проверяемый диапазон; числа, на кратность которым надо проверить (проверяя взаимную кратность этих чисел); текст, выводимый при нужном результате и так далее.
Всё работало, но приятель сказал, что я ебанулся и это пахнет шизофренией.

     

В поисках пятого угла

главная