|
|
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
Читаю книжку Основы разработки веб-приложений. На стр. 151 авторЗадача FizzBuzz Если вы подумываете о том, чтобы работать программистом, вам обязательно нуж- но уметь решать задачку FizzBuzz. Насколько я знаю, эта задача стала популярной после поста в блоге Джеффа Этвуда под названием «Почему программисты не могут… программировать?» (Why Can’t Programmers… Program?). В посте Джефф указывает на тот факт, что многие люди, работающие программистами, не могут решить эту простую задачу. Вот как выглядит эта задача: напишите программу, которая выводит числа от 1 до 100. Но вместо тех, что делятся на 3, пусть будет выведено Fizz, а вместо тех, что делятся на 5, — Buzz. Вместо тех же, что делятся и на 3, и на 5, пусть будет выведено FizzBuzz. Вы вполне можете решить эту задачку с помощью цикла for, а также других инструментов, которым я научил вас в этой главе. Используйте серии условий if- else и оператор остатка от деления. Я должен добавить, что не считаю эту задачу особенно хорошим тестом на спо- собность кого-либо программировать, и не думаю, что ненайденное решение может быть поводом для увольнения программиста из-за несоответствия занимаемой должности. Существует множество причин, по которым кто-либо может не спра- виться с этой задачей, не имеющих никакого отношения к написанию компьютер- ных программ на уровне начинающего. Но все-таки что есть, то есть, и, возможно, когда-нибудь вам зададут этот вопрос. Поэтому постарайтесь найти решение и за- помнить его. Мое решение index.html Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. main.js Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Скрипт работает, результат правильный. Мой вопрос по оформлению кода, например проверка javascript кода на сайте jslint http://jslint.com/ выдает кучу ошибок. Как должно быть правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 02:45 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
PhpDeveloper, в первом посте, конечно не полностью выполнено условие задачи авторнапишите программу, которая выводит числа от 1 до 100. Но вместо тех, что делятся на 3, пусть будет выведено Fizz, а вместо тех, что делятся на 5, — Buzz. Вместо тех же, что делятся и на 3, и на 5, пусть будет выведено FizzBuzz. Пропустил ключевое слово авторНо вместо тех, Исправленный вариант Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Но мой первоначальный вопрос остался, почему код не проходит валидацию на сайте jslint.com ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 05:14 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
И еще вопрос, правильно ли я понимаю, что анонимные функции надо оборачивать скобками var main = (function() { ... }); или это не обязательно? как правильно? По поводу проверки кода на сайте jslint.com я склонен считать что не прав сайт, а не я. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 05:43 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
PhpDeveloperИ еще вопрос, правильно ли я понимаю, что анонимные функции надо оборачивать скобками var main = (function() { ... });Это не анонимная функция, а функция main. То же самое: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. PhpDeveloperПо поводу проверки кода на сайте jslint.com я склонен считать что не прав сайт, а не я.Последняя инстанция не какой-то левый сайт и не ты, а браузер. JS-валидаторы не нужны принципиально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 09:26 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
Про скобки вокруг анонимной функции прочитал. авторСкобки вокруг функции сообщают интерпретатору JavaScript о том, что используется анонимная функция, которую по правилам JavaScript можно вызвать "на месте". Вторые скобки - это обычный оператор вызова функции, который на месте вызывает анонимную функцию. По валидации тоже, все понятно. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 12:11 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
Мой окончательный вариант FizzBuzz Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 13:18 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
PhpDeveloper, Сайт Closure Compiler оптимизировал результат в одну строку http://closure-compiler.appspot.com/home Код: javascript 1. Ошибок и предупреждений нет. Работает одинаково. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 13:32 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
мой вариант, написан за 49 секунд в хромовой консольке Код: javascript 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 15:06 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
OracleLover, Я для самообразования, вдруг кто спросит, что такое FizzBuzz, а я не знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 19:09 |
|
||
|
Тест FizzBuzz
|
|||
|---|---|---|---|
|
#18+
PhpDeveloper, мне кажется даже индус, который вчера из канавы вылез наговнокодит какое-то бы то ни было решение. Если мне такую задачу на собесе дадут это 100% пора на выход - это или меня за идиота держат, и в этой компании идиоты работают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2014, 19:20 |
|
||
|
|

start [/forum/topic.php?fid=22&fpage=87&tid=1446573]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 340ms |

| 0 / 0 |
