Простая задачка на скорость #527209


#0 by Stepa86
Напишите программу, которая выводит на экран числа от 1 до 100. При этом вместо чисел, кратных трем, программа должна выводить слово «Fizz», а вместо чисел, кратных пяти — слово «Buzz». Если число кратно и 3, и 5, то программа должна выводить слово «FizzBuzz» навеяно у кого какое время от создания обработки, до получения результата в окно сообщений (ну или кто как выводит на экран) ?
#1 by Stepa86
у меня 1:32... много на переключении раскладки потерял
#2 by acsent
Настоящий одноэсник начинает написание программы со слов ЗАЧЕМ?
#3 by Tatitutu
а что такое кратно ?
#4 by СвинТуз
Для ии=1 по 100 Цикл    Если (ии%15)=0 Тогда       Сообщить("FizzBuzz");    ИначеЕсли (ии%5)=0 Тогда       Сообщить("Buzz");    ИначеЕсли (ии%3)=0 Тогда       Сообщить("Fizz");    Иначе        Сообщить(ии);    КонецЕсли; КонецЦикла;
#5 by Stepa86
вон в настоящий одноэсник =) Если б все задавали этот вопрос, то у 1Сников было б мало работы... такие вопросы они задают только в том случае, когда не хотят это делать
#6 by zyto
Ещё спроси что такое числа :)
#7 by СвинТуз
Он начинает с вопроса "сколько?"
#8 by Stepa86
тут время главное, а не алгоритм...
#9 by povar
Смотря какой бюджет, можно и на неделю растянуть
#10 by VladZ
От ста тыщь...
#11 by Ненавижу 1С
можно прям сюды? Для й=1 по 100 Цикл  Стр = "";  Если й%3=0 Тогда    Стр="Fizz";  КонецЕсли;  Если й%5=0 Тогда    Стр=Стр+"Buzz";  КонецЕсли;  Если Стр="" Тогда    Стр=Строка(й);  КонецЕсли  Сообщить(Стр); КонецЦикла;
#12 by Живой Ископаемый
#13 by СвинТуз
ну вот полчаса работы ... вроде я первый ... думаю 500 рублей будет достаточно высылать будете на электронный кошелек? з.ы. Кстати ... зачем вам это надо было?
#14 by Живой Ископаемый
Или нужно было правильно решить? :)
#15 by Ненавижу 1С
хотя все бОльшую важность принимает скорость разработки, но в данном случае соревнование полный бред
#16 by Tatitutu
тема создана в 14.01.11 - 14:10 уже 14.01.11 - 14:20 ответ >10 минут
#17 by СвинТуз
вот поэтому 1с и вытеснила неудачнегов от с++
#18 by Ненавижу 1С
юмор оценен
#19 by also
первое условие зачем?
#20 by СвинТуз
глаза раскройте ширше 4 минуты - 2 минуты на обнаружение и чтение
#21 by СвинТуз
условия задачи читайте и код Вы же программист
#22 by Stepa86
дык пятница же, и это такое спринтерское задание, где счет идет на секунды... чисто текст без создания обработки, ее запуска под 1Ской и проверкой я б может и < 1 минуты сделал, но уже лень пробовать
#23 by Живой Ископаемый
2 оно необязательно - см. код в ... но так тоже можно
#24 by also
"Если число кратно и 3, и 5, то программа должна выводить слово «FizzBuzz»" У вас есть условие на кратность трем и на кратность пяти..Все..Больше не надо условий..
#25 by Stepa86
можно усложнить задачу, получить таблицу из 100 строк запросом, по условию из 0
#25 by Tatitutu
- не тебе адресовано, ты еще успел он тоже интересуется
#27 by СвинТуз
1
#28 by also
конечно можно, просто в данном примере всего одно условие лишнее, и код не сильно заговнился, а если чуть усложнить задачу...
#29 by also
но не оптимально
#30 by СвинТуз
Ню ню ... чел меня будет учить что такое НОД
#31 by Живой Ископаемый
2 ты смешной...
#32 by СвинТуз
отдыхайте тяпница сегодня
#33 by also
ты решил задачу не оптимально, мог бы уже согласиться и не вы..ываться
#34 by acsent
Это фришники начинают, так а фикси с вопроса ЗАЧЕМ
#35 by Шпиндельная бабка
Я не смекнул сложность задачи.
#36 by also
А, я понял кто УПП пишет :))
#37 by СвинТуз
можем и решето Эратосфена обсудить ?
#38 by also
см
#39 by forforumandspam
.
#40 by Лефмихалыч
получилось даже масштабируемо и без омерзительного дублирования кода, как у некоторых :)
#41 by Ненавижу 1С
за собой заметил такую фигню: если давать на скорость, то волнуюсь и результат бывает хуже чем если не говорить про скорость выполнения
#42 by СвинТуз
2also что же Вы такой ... особенный ? если число делиться на 3 и 5 -> оно делиться на 15 вырубаем 15 ... проверяем на 3 и на 5 благо числа простые и не кратные ... вот если бы было 6 и 8 ... было бы сложнее Я что то не так излагаю?
#43 by Шпиндельная бабка
это что за обработка на видео ? собственная разработка ?
#44 by Ненавижу 1С
и неправильно кстати, ты его проверял то?
#45 by Лефмихалыч
+ пеляет, напортачил...
#46 by also
я уже написал в .. Очевидно что на кратность 3 и на кратность 5 необходимо условие. Также очевидно что если в коде уже присутствуют эти условия, то еще одного условия не требуется для решения поставленной задачи
#47 by Шпиндельная бабка
- вот кто упп написал ....
#48 by Живой Ископаемый
2 чувак, ты случайно после того как анекдот рассказываешь - не объясняешь почему он смешной?
#49 by Живой Ископаемый
2(44,45) не заметил ошибки... чо там?
#50 by Живой Ископаемый
2 нет, скачанная... ТормозИТ (вроде) - инструменты разработчика
#51 by Tatitutu
только тебе по секрету и - как бы сказать... братья - близнецы - сам задал вопрос - сам и ответил побыстренькому
#52 by СвинТуз
достает я же его в реале не вижу ... вдруг он тормоз, а не прикалывается
#53 by zak555
на чём писать ?
#54 by Лефмихалыч
сообщений сильно дохера. Сообщить(СчЦ) надо из внутреннего цикла вынести, а сам внутренний цикл прерывать, как только в условие заходишь
#55 by СвинТуз
ладно ... всем тяпнуться ... удачно 500 рублей автор зажмет походу однозначно пошел напьюсь с горя
#56 by Живой Ископаемый
а
#57 by DJ Anthon
в голове код пронесся за пару секунд.. смысл статьи понятен, полностью согласен с автором. а вот вы напишите код решения японского кроссворда, вот это я понимаю )))
#58 by СвинТуз
перепиши - посмотрим
#59 by AaNnDdRrEeYy
Для ии=1 по 100 Цикл   Если (ии%15)=0 Тогда      Сообщить("FizzBuzz");   ИначеЕсли (ии%5)=0 Тогда      Сообщить("Buzz");   ИначеЕсли (ии%3)=0 Тогда      Сообщить("Fizz");   Иначе       Сообщить(ии);   КонецЕсли; КонецЦикла; Настоящий 1с ник копипастит !!!!
#60 by zak555
пусть 1сниги напишут вывод всех простых чисел от 1..N
#61 by Tatitutu
засечь время прочитать задание открыть конфигуратор подождать пока загрузится создать новую обработку перейти в модуль написать код сохранить обработку запустить в режиме предприятия открыть обработку выполнить стоп автор 1:32 ? 100$ на стол повторишь ?
#62 by also
баян... тут один уже собрался решетом Эратосфена меряться
#63 by zak555
самое главное, чтоб было понимание
#64 by Живой Ископаемый
Автор задачки говорит что для него тоже сгодится: I would also accept something like: for i in range(1,101): if i % 15 == 0: print “FizzBuzz” elif i % 3 == 0: print “Fizz” elif i % 5 == 0: print “Buzz” else: print i This at least shows that they realize that if something is divisible by 3 and 5, then it is also divisible by 15 (not a mind-bending fact, but at least they are changing the problem to be expressed without using “not”). Но далее The follow-up question from the interviewer is what is important. If they give either of the previous two solutions (or something similar), and then you ask them to optimize for length of code, or execution time (aka “don’t retest”) and they understand what you want, then you are learning something about them. That’s the real goal of the interview.
#65 by zak555
или функцию на проверку : простое число или нет
#66 by Tatitutu
интересно , а статью из кто нибудь читал ? очень понравилось 1. Нормальный программист должен написать такую программу на бумажке за пару минут. Но вот что интересно: многие люди с профильным образованием вообще не могут справится с этой задачей. Были даже случаи, когда кандидаты, подававшие резюме на вакансию «Senior developer» тратили на эту программу больше 15 минут. и подводим итог статьи: 2. то мы обязательно даем кандидату небольшую задачу по программированию, которую он должен решить при нас. Ничего сверхсложного, просто небольшое упражнение на час-полтора вопрос: кого люди ищут - если НОРМАЛЬНЫЙ за ПАРУ МИНУТ, а кандидату дают задание на ЧАС-ПОЛТОРА
#67 by also
ну чтобы понять что 15 кратно и 3 и 5 надо быть по крайней мере Перельманом :)
#68 by Лефмихалыч
а на бумажке ваще хер знает, сколько времени займет, но больше 5 минут - я руками пишу очень медленно и бэкспэйса нет, в результате чего приходится переписывать часто
#69 by Живой Ископаемый
2 главное не лажануться и не перепутать порядок условий... Потому что тоже о многом скажет
#70 by also
ну это да
#71 by Stepa86
база и конфигуратор были уже открыты, задание прочитано, время засек по "Ctrl+N", остановил, когда в окне сообщений выпало решение. Вроде это не противоречит
#72 by zak555
задача мутота
#73 by Ненавижу 1С
исправленный код Соответствие = Новый Соответствие; Соответствие.Вставить(15,"FizzBuzz"); Соответствие.Вставить(3,"Fizz"); Соответствие.Вставить(5,"Buzz"); Для й=1 По 100 Цикл    Нашли = Ложь;    Для каждого Эл Из Соответствие Цикл        Если й%Эл.Ключ=0 Тогда            Нашли = Истина;            Сообщить(Эл.Значение);            Прервать;        КонецЕсли;    КонецЦикла;    Если Не Нашли Тогда        Сообщить(й);        КонецЕсли; КонецЦикла;
#74 by Stepa86
всегда ли проверка на 15 будет раньше, чем на 3 или 5?
#75 by 1С-ница
Теперь я знаю, как быстрее получить адекватный ответ на свой вопрос))
#76 by Ненавижу 1С
в документации этого не сказано, но только что проверил - да
#77 by Stepa86
для избежания возможных коллизий с соответствием лучше через тз переписать, думаю
#78 by СвинТуз
Вы уже текущую строку обработали? Для быстрого ответа нужно фото другое
#79 by Живой Ископаемый
2 как?
#80 by СвинТуз
Ваше фото полюбос не прокатит
#81 by TormozIT
Афигенный способ использования консоли запросов) А почему не стал делать в справочнике ирАлгоритмы?
#82 by Попытка1С
Тру 1сник должен печатать гораздо быстрее =)
#83 by SnarkHunter
Нижний Новгород от Чернобыля далеко?
#84 by Живой Ископаемый
2 Привычка уже - знаешь чаще что-то делаешь над данными. зы. Спасибо!
#85 by Живой Ископаемый
Далеко, но там есть свой закрытый объект.
#86 by andrewks
в чём смысл? и почему не обозначена среда разработки? ЗЫ если 8.2 да на стареньком компе - только запускать минут 5 надо
#87 by Туц
Как-то так.
#88 by Нуф-Нуф
500руб
#89 by 1C-Nick
не нарадуюсь вот этому
#90 by strange2007
на асме буду день писать, значит я не с вами
Тэги: Математика и алгоритмы
Ответить:
Комментарии доступны только авторизированным пользователям