- 1
- 2
- 3
- 4
- 5
- 6
- 7
int SUM(int A, int B)
{
if (0 == A) return B;
if (0 == B) return A;
return (1 + (SUM(A, B - 1) + SUM(A - 1, B)) / 2);
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1122.2
int SUM(int A, int B)
{
if (0 == A) return B;
if (0 == B) return A;
return (1 + (SUM(A, B - 1) + SUM(A - 1, B)) / 2);
}
рекурсивное вычисление суммы двух чисел.
guest 21.04.2009 15:50 # −13
При коммерческом программировании иногда, кстати, специально оставляют места в программах, которые потом можно на халяву оптимизить.
guest 22.04.2009 09:10 # −31.8
ничего говнокодерского здесь нет. ты бы еще предложил за место if case использовать
guest 22.04.2009 14:30 # +12.4
мутанты.
особенно сравнение с 0 порадовало :)
guest 22.04.2009 15:22 # +19.2
Граждане комментаторы, да вы ёбнулись.
Если это не олимпиадная задача, то написавшему такое надо сделать что-то крайне нехорошее.
guest 22.04.2009 18:11 # +54.2
Что-то этот код больше на Си похож, чем на С++. Лучше использовать вот такой код:
xaionaro 05.06.2010 04:46 # +4
P.S.: Кстати говоря, программа компилилась аж целых 7 секунд о_0
xaionaro@bellatrix:~$ time g++ t.cpp
real 0m7.041s
user 0m6.624s
sys 0m0.260s
xaionaro@bellatrix:~$ ./a.out
s1=11, s2=7
xaionaro 05.06.2010 04:50 # 0
sombre-hombre 11.06.2010 13:26 # +1
guest 20.06.2010 00:50 # 0
guest 22.04.2009 20:05 # +17
lazycommit 04.11.2011 16:53 # 0
guest 22.04.2009 22:02 # +24.2
старинное программерское развлечение "дважды два в тыщу строк"? :-)
guest 23.04.2009 14:21 # −21
Да вы долбаебы-говнокодеры! идите в переучивайтесь. никуя ведь не знаете, может задача спецефическая
код вполне годный.
кто больший говнокодер? тот кто наклал 7 строк или тот кто наклал аж 50 строк и при том это говно так же работает
guest 23.04.2009 15:16 # +15
Хороший код. Создан просто для того, чтобы попрактиковаться в рекурсивных методах. Суммирует только неотрицательные числа. :) 5+
Govnocoder#0xFF 21.04.2011 20:17 # 0
guest 24.04.2009 06:02 # +5
Хотелось бы услышать комментарии К.О...
guest 24.04.2009 09:40 # +8
Хороший код, красивый.
guest 26.04.2009 21:53 # +7
guest 26.03.2010 03:03 # −1
guest 27.04.2009 21:01 # −7
Думаю, это просто высосанный из пальца пример рекурсии.
Дебильный пример, такое же исполнение, но знание рекурсии показывает.
guest 29.04.2009 08:03 # −2.2
guest 18.05.2009 15:06 # 0
guest 01.06.2009 23:38 # 0
Это очень похоже на то, что писалось в
Structure and Interpretation of Computer Programs aka SISP. Вобщем, это ЛИСП'овский прикол.
guest 06.12.2009 02:17 # +1
guest 07.12.2009 16:35 # +1
?
guest 31.01.2015 07:12 # +1
guest 28.01.2010 12:49 # +3.2
{
return (b)? sum(++a, --b): a;
}
guest 04.06.2010 20:24 # +4
while(a>0){a--;b++;}return b;
guest 19.06.2010 22:34 # +1
sanchousf 04.09.2010 00:55 # 0
Или:
Общий случай сами ищите если кому нужно.
Pauchok-Anaynckiy 23.11.2010 23:47 # −3
TheHamstertamer 17.05.2011 13:56 # 0
guest 29.07.2011 00:53 # −1
Всякие арифметики Пеано и кольца Гротендика вполне себе используются для вычислений на типах в Haskell'ах и обычных — в Coq'ах.
TheHamstertamer 09.08.2011 19:11 # +1
guest 05.04.2011 10:33 # +1
lazycommit 04.11.2011 16:55 # 0
guest 17.05.2011 15:20 # −1
tilde — некая арифметическая операция, увеличивающее число на единицу.
SunDrop 02.05.2013 22:58 # +2
TarasB 29.07.2011 11:54 # +2
zloidooraque 13.04.2015 03:20 # 0
Analotolievich 30.08.2016 21:05 # 0
void_main 30.08.2016 21:14 # −9
Strannik1941 14.10.2015 07:34 # +1
(define (+ a b)
(if (= a 0)
b
(inc (+ (dec a) b))))
guest 30.08.2016 16:32 # 0
void_main 30.08.2016 18:29 # 0