|
OFF: Пошел программист за покупками | ☑ | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0
Ненавижу 1С
гуру
12.08.11
✎
09:43
|
Жена посылает мужа-программиста в магазин. Даёт ценные указания:
-Купи палку колбасы. Если будут яйца, купи десяток. Приходит счастливый муж, протягивает десять палок колбасы. Жена:-??? Муж: -Яйца были! Сколько колбасы должен был купить программист? |
||||||||||||||||
142
Сергей Д
12.08.11
✎
11:11
|
(141) С++ это зло
|
||||||||||||||||
143
Asmody
12.08.11
✎
11:12
|
(141) [А еще некошерно передавать результат одной функции как параметр другой без промежуточной переменной] — ага, функциональщикам это расскажи
|
||||||||||||||||
144
Ненавижу 1С
гуру
12.08.11
✎
11:13
|
(137) зря
смотри как удобнее было бы в запросе вместо ВЫБОР КОГДА А=1 ТОГДА Б КОГДА А=2 ТОГДА В ИНАЧЕ 0 КОНЕЦ КАК П писать: А=1?Б:А=2?В:0 КАК П |
||||||||||||||||
145
Ненавижу 1С
гуру
12.08.11
✎
11:13
|
(141) нормально все, надо не лениться писать const почаще
|
||||||||||||||||
146
Jolly Roger
12.08.11
✎
11:14
|
(137) а ну понятно. а то уж я испугался :-)
|
||||||||||||||||
147
Stepa86
12.08.11
✎
11:14
|
(141) тут мнения расходятся, видел рекомендации по убиению промежуточных переменных (то ли у Фаулера, то ли у Макконнелла) и видел рекомендации по их использованию (у Мартина).
Если функция меняет состояние системы и из ее имени это не очевидно (или делает кроме основной операции еще чо нить), то надо оторвать несколько яиц программисту |
||||||||||||||||
148
Xapac
12.08.11
✎
11:14
|
(141)мда
|
||||||||||||||||
149
Stepa86
12.08.11
✎
11:16
|
(144) я не уверен, что даже после минутной медитации правильно понял второй вариант
|
||||||||||||||||
150
Адинэснег
12.08.11
✎
11:16
|
|||||||||||||||||
151
Дикообразко
12.08.11
✎
11:18
|
(80) патч был в (11)
|
||||||||||||||||
152
Jolly Roger
12.08.11
✎
11:18
|
(141) кстати да. в этом случае вполне согласен. проверка остатка, в принципе, трудоемкая процедура, поэтому ее лучше было бы вынести в отдельную строку...
|
||||||||||||||||
153
Jolly Roger
12.08.11
✎
11:18
|
+(152) в смысле, ресурсоемкая
|
||||||||||||||||
154
Ненавижу 1С
гуру
12.08.11
✎
11:19
|
|||||||||||||||||
155
dmpl
12.08.11
✎
11:23
|
(142) C++ - это инструмент. Опасный в использовании, зато позволяющий сделать почти все. Вплоть до указания, какие инструкции процессора использовать.
(147) 1. Все лишние переменные компилятор уберет сам. Так что при грамотном использовании нет даже проблем с повышенным расходом памяти (эти переменные либо имеют регистровый тип, либо точно так же временно создаются и потом уничтожаются). 2. Программист может об этом и не знать - взял базовый класс, немного поменял и... попал. Я видел в одном драйвере 3 раза перегруженный оператор =, который в итоге писал значение не только в переменную, но и в PCI-устройство... |
||||||||||||||||
156
KishMish
12.08.11
✎
11:24
|
(0) Кто сказал что надо купить колбасы там же написано "десяток". Может это название такое Молоко "Десяток"... может надо было принести несколько купюр по 10 рублей.
Задача поставлена не корректно |
||||||||||||||||
157
Сергей Д
12.08.11
✎
11:24
|
(152) Ну тогда ассемблер еще лучше. Вообще никаких ограничений.
|
||||||||||||||||
158
Сергей Д
12.08.11
✎
11:26
|
(156) Нечеткая логика, однако (есть такой раздел математики)
|
||||||||||||||||
159
Stepa86
12.08.11
✎
11:26
|
(155) 1. там загвозка не в экономии памяти, а в удобстве для рефакторинга и/или для чтения
2. это примерно то же самое, что не проезжать перекресток на зеленый, потому что есть идиоты, гоняющие на красный |
||||||||||||||||
160
luckyluke
12.08.11
✎
11:26
|
(156) да, эту ситуацию мы уже рассмотрели.
|
||||||||||||||||
161
байт
12.08.11
✎
11:26
|
ПалкаКолбасы = 0;
Если БудутЯйца Тогда ПалкаКолбасы = 10; Иначе ПалкаКолбасы = 1; КонецЕсли; БудутЯйца = Истина; ПалкаКолбасы = 10 |
||||||||||||||||
162
байт
12.08.11
✎
11:28
|
Посмотрел ветку там оказывается уже все накодили)))))))))))
|
||||||||||||||||
163
Сергей Д
12.08.11
✎
11:28
|
(161) Еще раз. Кто вам сказал, что словие поставлено именно так. В задаче сказано: купи палку колбасы. БЕЗУСЛОВНО. И потом: ЕСЛИ ... ТО ... Так что 1 палку надо купить обязательно.
|
||||||||||||||||
164
Dismk
12.08.11
✎
11:28
|
Если не накручивать, то 11
11 |
||||||||||||||||
165
VasiL-V
12.08.11
✎
11:31
|
не иначе
11 |
||||||||||||||||
166
Erhov_egor
12.08.11
✎
11:34
|
точно
10 |
||||||||||||||||
167
Сергей Д
12.08.11
✎
11:35
|
Активность спала. Все едят колбасу.
|
||||||||||||||||
168
dmpl
12.08.11
✎
11:39
|
(157) К сожалению, уже есть ограничения. Например, самомодифицирующийся код в лучшем случае исполняется медленно, в худшем - глючит.
(159) 1. Ну, тут не надо бросаться в крайности. Если промежуточная переменная улучшит читаемость кода - она должна быть создана. 2. Тот драйвер, похоже, писал истинный адепт ООП... что недалеко от идиота. Я бы понял 1 перегрузку - действительно удобно использовать оператор = для записи в PCI-устройство и чтения из него. Но 3 раза перегружать - это уже слишком. Тут ведь основная проблема в том, что при использовании чужого кода все равно нельзя точно предсказать, когда меняется состояние в чужом коде, а когда нет... и когда оно вдруг начнет меняться. А отдельная переменная исключает подобную неоднозначность, и становится как-то пофиг - меняется там что-то или нет. |
||||||||||||||||
169
zGainer
12.08.11
✎
11:40
|
Попросили запостить :)
колбаса=0 (по умолчанию) колбаса=колбаса+1 если есть яйца колбаса=колбаса+10 11 |
||||||||||||||||
170
MaxS
12.08.11
✎
11:48
|
(2) Наверное хороший программист, если есть карманные деньги на 10 палок колбасы.
Сейчас если подумать, то 11. Но давно, когда это был не (бо... муз. инструмент), все считали, что 10. 10 |
||||||||||||||||
171
Xapac
12.08.11
✎
11:50
|
у кого 11 те не правильные программисты
|
||||||||||||||||
172
Xapac
12.08.11
✎
11:50
|
(171)Верней у кого 10-ть.
|
||||||||||||||||
173
Stepa86
12.08.11
✎
11:52
|
(172) а у кого 1?
|
||||||||||||||||
174
MaxS
12.08.11
✎
11:53
|
(173) значит это ещё не программист.
|
||||||||||||||||
175
Xapac
12.08.11
✎
11:54
|
(173)
Поулчается код: УсловиеНачатьИначе КпитьКолбасы(1) Если естьЯйца Тогда КупитьКолбасы(10) УсловиеКонец; |
||||||||||||||||
176
MaxS
12.08.11
✎
12:05
|
По моему, чтобы жену не обидеть, он должен не 11, а 10 купить. Т.к. они всегда вначале одно говорят, потом другое. ;)
Сидя на заднем сиденье авто показывает рукой направо и говорит поворачивай вон туда, налево. |
||||||||||||||||
177
Xapac
12.08.11
✎
12:07
|
(176)Тогда он вообще дурак)
А вообще это не программист должен был так купить, а сисадмин, который четко выполнял по мануалу. |
||||||||||||||||
178
Aprobator
12.08.11
✎
13:13
|
пятницо так пятницо
10 |
||||||||||||||||
179
Jofa
12.08.11
✎
13:33
|
Товар = Справочник.Номенклатура.НайтиПоНазванию("Колбаса");
Купить(Товар, 1); Если ЕстьЯйца() Тогда Купить(Товар, 10); КонецЕсли; 11 |
||||||||||||||||
180
n0ther
12.08.11
✎
13:34
|
люблю колбасу
11 |
||||||||||||||||
181
Lenka_Boo
12.08.11
✎
13:34
|
В ТЗ недостаточно информации.
"-Купи палку колбасы. Если будут яйца, купи десяток. " Отсутствует И/ИЛИ Если "И" по-умолчанию, то 11 палок. "ИЛИ" - 10. |
||||||||||||||||
182
Jofa
12.08.11
✎
13:36
|
(181)Нам что дали то и перепутали . .
|
||||||||||||||||
183
Seeker
12.08.11
✎
13:43
|
11
сначала 1 потом +10. 11 |
||||||||||||||||
184
БалбесВ1с
12.08.11
✎
13:47
|
Кто возьмется написать конфу 1С:Яйцо или колбаса?
Наработки есть,см.ветку. |
||||||||||||||||
185
Сергей Д
12.08.11
✎
14:14
|
(184) Колбасу уже давно съели.
|
||||||||||||||||
186
ТатьянаТВ
12.08.11
✎
15:48
|
Это какая больница?)
|
||||||||||||||||
187
Дикообразко
12.08.11
✎
15:48
|
(186) это программерская пятницо
|
||||||||||||||||
188
opty
12.08.11
✎
16:01
|
ТЗ не соответсвует стандартам и допускает двоякое толкование исполнения задачи . На дороаботку
|
||||||||||||||||
189
zender
12.08.11
✎
16:30
|
очевидно
10 |
||||||||||||||||
190
Stim213
12.08.11
✎
16:35
|
сделаю за 8500р
|
||||||||||||||||
191
wertyu
12.08.11
✎
16:37
|
Здесь голосовалку прикрутили, чтобы утвердить решение демократическим путём?
Есть предложение открыть голосовалку по числу Пи: 1. 3.1415... 2. 3 3. 4 4. 10^100 5. 10^(10^100) |
||||||||||||||||
192
n0ther
12.08.11
✎
16:39
|
(191)
over 9000 |
||||||||||||||||
193
wertyu
12.08.11
✎
16:40
|
(192) первым в поиске по сайту стоит гугл, а лурка там вообще нет
|
||||||||||||||||
194
Vladimirr
12.08.11
✎
16:40
|
11 никак не получается. Жена должна была сказать "купи ещё десяток" для этого.
//Функция возвращает число колбас для покупки, тип возвращаемого значения - число //Параметры: ЕстьЯйца - тип Булево Функция ВернутьКолбасу(ЕстьЯйца) Возврат ?(ЕстьЯйца,10,1); КонецФункции 10 |
||||||||||||||||
195
zavsom
12.08.11
✎
16:41
|
Вылить шампунь в руку , намылить голову, повторить.
|
||||||||||||||||
196
wertyu
12.08.11
✎
16:43
|
(195) тогда прогу придёься ещё и за шампунем идти, если конечно сможет из цикла выйти
|
||||||||||||||||
197
DJ Anthon
12.08.11
✎
16:54
|
для подчеркивания идиотизма программистов
11 |
||||||||||||||||
198
DJ Anthon
12.08.11
✎
16:54
|
но по смыслу
10 |
||||||||||||||||
199
DJ Anthon
12.08.11
✎
16:56
|
она описывает тех задание, а не алгоритм, если чо...
|
||||||||||||||||
200
luckyluke
12.08.11
✎
16:58
|
(200)
|
||||||||||||||||
201
MaxS
12.08.11
✎
16:58
|
(188) тут главнее результат, т.е. продукт. Когда он есть, можно обсудить детали и скорректировать будущее ТЗ.
|
||||||||||||||||
202
ТатьянаТВ
12.08.11
✎
16:59
|
Домой!!!!!!!!!! Выходные!!!!!!!!!!!
Траляляляляля |
||||||||||||||||
203
kutshai
12.08.11
✎
17:30
|
я муж. и мне жалко нервов.
1 |
||||||||||||||||
204
Stim213
12.08.11
✎
17:32
|
(202)обрадуй нас, что у тебя дома нет интернета
|
||||||||||||||||
205
marvak
12.08.11
✎
17:34
|
(0)
это точно тупой и нетворческий и тупой быдлокодер. так что... двойка 10 |
||||||||||||||||
206
salvator
12.08.11
✎
17:35
|
Настоящий мужик берет прозапас.
11 |
||||||||||||||||
207
marvak
12.08.11
✎
17:36
|
(206)
десять палок, этот перебор, однозначно. хотя... если он был импотентом, то мог взять замену своим супружеским обязанностям |
||||||||||||||||
208
kittystark
12.08.11
✎
18:46
|
не!
на самом деле все было так не так, муж воспользовался рекурсией:
поэтому есть еще варианты: -у него закончатся деньги, -скупит всю колбасу, -при огромных объемах колбасы и денег вылетит по переполнению стека/памяти |
||||||||||||||||
209
Asirius
12.08.11
✎
19:41
|
Ответ три палки колбасы уже предлагали? Для совсем тру-прогов..
|
||||||||||||||||
210
Escander
12.08.11
✎
20:50
|
Кривая постановка допускающая многовариантную трактовку приводит к тому что у задачи несколько различных правильных ответов: 1, 10, 11.
|
||||||||||||||||
211
Креатив
12.08.11
✎
20:51
|
(0)Правда непонятно, что такое десяток?
1 |
||||||||||||||||
212
VasilyKushnir
12.08.11
✎
21:15
|
(210) Да нет... не "Кривая постановка допускающая многовариантную трактовку" А "Кривая постановка допускающая лишь частичное решение задачи"
Смотрим; "-Купи палку колбасы. " - отлично! купил палку. "Если будут яйца, купи десяток." - купить десяток ЧЕГО? дальше решниия нет. 1 |
||||||||||||||||
213
Escander
12.08.11
✎
21:21
|
(212)ну типа каждый сам что ему будет удобнее то и поймёт.
|
||||||||||||||||
214
VasilyKushnir
12.08.11
✎
21:32
|
(213) :-)))))))) Ага:
жена говорит - сходи в магазин - купи бутылку масла муж приносит бутылку водку: - бутылку взял, а на масло не хватило. |
||||||||||||||||
215
Escander
12.08.11
✎
21:41
|
(214) не у вас чётко "бутылка масла", а вот было-бы так:
-Сходи купи бутылк масла, если будет оливковое - купи 2 бутылки. Оливковое было в магазине, поэтому кроме бутылки подсолнечного купил 2 бутылки по 1л водки |
||||||||||||||||
216
VasilyKushnir
12.08.11
✎
21:49
|
(215) Наверное только унас 2 бутылки == 2 бутылки водки (как само собой разумеющееся).
Сколько будет 0.5+0.5 любой иностранец скажет один. И только русский скажет литр. |
||||||||||||||||
217
Escander
12.08.11
✎
21:53
|
(216) ну типа мы такие! На самом деле видел некоторых иностранцев.... в северных старнах с холодным климатом (Дания, норвегия, Финляндия) принято пить точно так-же как и у нас. Единственнгое там порядку поболее в мозгах у челов и например бухие за руль авто не полезут!
|
||||||||||||||||
218
marty0701
12.08.11
✎
22:11
|
Так то она ничего не описывает, жена - бух, выдала пару строчек... тут, кстати зависит от того как понял прог, ведь жена не говорила где точка или еще что, тупо выпалила весь текст, так что.... если прог понял как запятую, то 10, если осознал, что точка, то 1, если моск замылился, купил 10+1
|
||||||||||||||||
219
Zaid
23.08.11
✎
15:09
|
Функция ПокупкаКолбасы()
Количество = 1; Если ЕстьЯйца() Тогда Количество = 10; КонецЕсли; Возврат Количество; Конецфункции 10 |
||||||||||||||||
220
nbIx
23.08.11
✎
15:12
|
(219)+1
10 |
||||||||||||||||
221
Mikeware
23.08.11
✎
15:16
|
Программист из банка не вышел на работу. Через день начальство заволновалось (ну, конфиденциальность, безопасность и все такое...), вызвали Службу безопасности. Те поехали к нему домой. Звонят - никто не открывает. Но вроде какие-то звуки есть. Решили ломать дверь. Взломали дверь – а программист сидит в ванне, вода холодная, сам – синий, в руках почти пустой тюбик шампуня. На тюбике написано- "Выдавить шампунь, намылить голову, смыть, повторить..."
|
||||||||||||||||
222
Lyekka
23.08.11
✎
15:21
|
Замечание про десяток относилось к яйцам.
а не к колбасе. 1 |
||||||||||||||||
223
Rovan
гуру
23.08.11
✎
15:22
|
(217) пить они может и пьют только врядли у них это так сильно вошло в фольклор!
наверно иностранный официант не везде поймет что вы заказали если просите "Для начала мне просто 100 грамм" |
||||||||||||||||
224
Humandra
23.08.11
✎
15:29
|
На самом деле, программист была и жена. Но начинающий видимо.
Она спросила: если будут яйца, купи десяток. Не-программист попросит: купи 1 колбасу и 10 яиц. А она позаботилась о том, чтобы метод: КупитьЯйца не вывалился с эксепшионом при попытке купить несуществующие объекты :)))) -1 |
||||||||||||||||
225
vesh
23.08.11
✎
15:29
|
Разные предложения. Задания умете читать. Программист оно и задания должен уметь понимать.
Жена сказала ей надо "Зашибись", а остальное не важно 1 |
||||||||||||||||
226
Humandra
23.08.11
✎
15:32
|
(225) Но программистом была начинающим и невнимательным.
Потому что упустила обработку исключительных ситуаций при покупке 1 колбасы. И не учла, что покупаемый во второй процедуре объект надо явно объявлять по типу (или язык был нетипизированный?) |
||||||||||||||||
227
Aprobator
23.08.11
✎
15:45
|
внимание вопрос - решение подобной проблемы у 1С ника занимает уже 11 дней - какова эффективность данного работника?
|
||||||||||||||||
228
Leeloo
23.08.11
✎
16:25
|
Купить(ПалкаКолбасы);
Если ТипЗначенияСтр(Десяток)="Число" Тогда Для Н=1 по Десяток Цикл Купить(ПалкаКолбасы); КонецЦикла; ИначеЕсли ТипЗначенияСтр(Десяток)="Яйцо" Тогда Для Н=1 по Десяток Цикл Купить(Яйцо); КонецЦикла; Иначе Купить(Десяток); КонецЕсли; 11 |
||||||||||||||||
229
Leeloo
23.08.11
✎
16:27
|
Купить(ПалкаКолбасы);
Если ЕстьЯйца()=1 Тогда Если ТипЗначенияСтр(Десяток)="Число" Тогда Для Н=1 по Десяток Цикл Купить(ПалкаКолбасы); КонецЦикла; ИначеЕсли ТипЗначенияСтр(Десяток)="Яйцо" Тогда Для Н=1 по Десяток Цикл Купить(Яйцо); КонецЦикла; Иначе Купить(Десяток); КонецЕсли; КонецЕсли; 1 |
||||||||||||||||
230
Aprobator
23.08.11
✎
16:40
|
*с тоской вздыхая* не видать программисту нормальной яичницы с колбасой.
|
||||||||||||||||
231
Armin
23.08.11
✎
16:46
|
(228) Такой раздутый алгоритм приводит к тому, что программист начинает тупить когда его посылают в магазин за колбасой. =)
Вот оптимизированный ваниант: КупитьКолбасы(?(ЕстьЯйца=Истина,10,1)); |
||||||||||||||||
232
Sj
23.08.11
✎
16:54
|
ПалкаКолбасы = 10 & ЕстьЯйца + 1
|
||||||||||||||||
233
Megas
23.08.11
✎
16:58
|
10 - 11 в зависимости от того на чём он программист.
К примеру в C счёт с 0 а в pascal с 1 10 |
||||||||||||||||
234
Jaffar
23.08.11
✎
17:49
|
кстати, в оригинале http://community.otseti.ru/comment/reply/7/747.htm - "Дорогой, купи, пожалуйста, палку колбасы, И (однозначно И!!! - никаких ИЛИ!!!) если будут яйца, то купи десяток."
(219) функция называется не ПокупкаКолбасы(), а ПокупкаВМагазине(), а процедура КупитьКолбасу() там идет до всяких Если. Поэтому - 11 |
||||||||||||||||
235
Ненавижу 1С
гуру
23.08.11
✎
21:41
|
Смотрю тема затронула за живое, а я только из отпуска вернулся ))
|
||||||||||||||||
236
Megas
24.08.11
✎
09:44
|
(235) О да я на автора не обратил внимание -)
Тогда ответ : 0 или Null или Неопределено: вообще всё зависит от того что он увидел по дороге. =) PS Он одинесником был =) |
||||||||||||||||
237
окси
24.08.11
✎
09:46
|
Умора.
|
||||||||||||||||
238
miki
24.08.11
✎
09:57
|
(234)в оригинале было ", а если...".
Иначе теряется вся соль и появляются бредовые инсинуации типа сабжа. Да и сама фраза с "И" режет слух - не инструктируют так бабы мужиков. |
||||||||||||||||
239
Повелитель
24.08.11
✎
10:04
|
(238)
Правильно, настоящие жены программистов 1с, пишут инструкцию для покупок, только 1с-совместимо :)) |
||||||||||||||||
240
MaxS
24.08.11
✎
13:29
|
Если бы в 1С функции учитывали жизненный опыт, опыт поколений, тогда программист купил бы палку колбасы и 10 яиц.
Но до искусственного интеллекта в персональных компах ещё далеко. |
||||||||||||||||
241
Jaffar
24.08.11
✎
23:38
|
(238) да, я слышал именно такую версию, но гугль не смог ее найти - пришлось довольствоваться союзом "И".
(240) "Но до искусственного интеллекта в персональных компах ещё далеко." а в одинэсниках? :-) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |