1. Лучший говнокод

    В номинации:
    За время:
  2. Python / Говнокод #17108

    −106

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    >>> quit()
    Traceback (most recent call last):
      File "<stdin>", line 1, in ?
    TypeError: 'str' object is not callable
    >>> quit  
    'Use Ctrl-D (i.e. EOF) to exit.'
    >>> type(quit)
    <type 'str'>
    >>> type(exit)
    <type 'str'>

    Первый раз запустил питон 2.4...

    bormand, 14 Ноября 2014

    Комментарии (18)
  3. C# / Говнокод #17069

    +141

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    /// <summary>
    /// Массив весов для генерации КС длиной в 60 символов
    /// </summary>
    private static int[] weightsArray = new int[]
    { 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1, 7, 3, 1};

    Цикл? Нееее, надёжнее ведь руками забить!

    NeoN, 05 Ноября 2014

    Комментарии (18)
  4. C++ / Говнокод #17005

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    struct Counter{
    	static int k;
    	Counter(){ k++; }
    	~Counter() { k--; }
    };
    int Counter::k = 0;
    #define LOL(x) {string s = #x; Counter c##x; cout<<s.substr(0,1+s.find('['))<<Counter::k<<"]="<<x<<'\n'; }

    Abbath, 01 Ноября 2014

    Комментарии (18)
  5. 1C / Говнокод #16758

    −125

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    Попытка
    	// Для редких случаев, когда ЭтотОбъект неопределен
    	// проверку на режим обмена данными делаем через попытку
    	Загрузка = ЭтотОбъект.ОбменДанными.Загрузка;
    	Если Загрузка Тогда
    		// если текущий режим Загрузка, то производим минимум проверок
    		// т.к. все проверки были произведены в ИБ источнике
    		Возврат Ложь;
    	КонецЕсли;
    	ДопЗагрузка = Неопределено;
    	Если НЕ Загрузка Тогда
    		ЭтотОбъект.ДополнительныеСвойства.Свойство("Загрузка",ДопЗагрузка);
    		Загрузка = ?(НЕ ДопЗагрузка = Неопределено,ДопЗагрузка,Загрузка); 
    	КонецЕсли;
    	Если Загрузка Тогда
    		Возврат Ложь;
    	КонецЕсли;
    Исключение КонецПопытки;

    Переменная "Загрузка" может принимать только 2 значения.

    Mortum, 24 Сентября 2014

    Комментарии (18)
  6. Си / Говнокод #16742

    +121

    1. 1
    int main(void)

    GreenKiller, 21 Сентября 2014

    Комментарии (18)
  7. JavaScript / Говнокод #16694

    +151

    1. 1
    2. 2
    3. 3
    4. 4
    //...
    <script>splashRadar('leftcol', 1);</script>
    <script>splashRadar('baseStyles');</script>
    //...

    На мейл.сру.

    gost, 14 Сентября 2014

    Комментарии (18)
  8. PHP / Говнокод #16585

    +172

    1. 1
    if ($year == '1996' && $year == '1995' && $year == '1994' && $year == '1993' && $year == '1992' && $year == '1991' && $year == '1990' && $year == '1989' && $year == '1988' && $year == '1987' && $year == '1986' && $year == '1985' && $year == '1984' && $year == '1983' && $year == '1982' && $year == '1981' && $year == '1980' && $year == '1979' && $year == '1978' && $year == '1977' && $year == '1976' && $year == '1975' && $year == '1974' && $year == '1973' && $year == '1972' && $year == '1971' && $year == '1970' && $year == '1969' && $year == '1968' && $year == '1967' && $year == '1966' && $year == '1965' && $year == '1964' && $year == '1963' && $year == '1962' && $year == '1960' && $year == '1959' && $year == '1958' && $year == '1957' && $year == '1956' && $year == '1955' && $year == '1954' && $year == '1953' && $year == '1952' && $year == '1951' && $year == '1950')

    Я просто рыдаю. Мало того, что каждый год ручками вбит, так ещё и пользак должен обязательно быть рождённым во всех этих годах))

    avtorfox, 24 Августа 2014

    Комментарии (18)
  9. C++ / Говнокод #16543

    +42

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    int complexFunction(int flag)
    {
        QMutexLocker locker(&mutex);
    
        int retVal = 0;
    
        switch (flag) {
        case 0:
        case 1:
            return moreComplexFunction(flag);
        case 2:
            {
                int status = anotherFunction();
                if (status < 0)
                    return -2;
                retVal = status + flag;
            }
            break;
        default:
            if (flag > 10)
                return -1;
            break;
        }
    
        return retVal;
    }

    Пора добавлять отдельную ветку для фрейворка Qt. Это просто клад, так извратить все принципы програмирования :-). Этот код из справки к этому чуду. QMutexLocker - целый класс для того чтобы не нужно было разблокировать мьютекс при выходе из функции! Так они скоро и до сборщика мусора с неявной типизацией дойдут!
    P.S. У кого есть Qq попробуйте в "коде" сборки qmake вызвать include внутри функции.

    rst256, 15 Августа 2014

    Комментарии (18)
  10. JavaScript / Говнокод #16483

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    if( window == top ){
    	document.cookie = "st=0; path=/; expires=100";
    	window.location = window.location;
    }

    sa-kirich, 05 Августа 2014

    Комментарии (18)
  11. 1C / Говнокод #16395

    −163

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    Пока ДокиДляЗагрузки.Количество()>0 Цикл
    		СтрокаДоковЗагрузки = ДокиДляЗагрузки.Получить(0);
    		НомерДок = СтрокаДоковЗагрузки.НомерДок;
    		ДатаДок = СтрокаДоковЗагрузки.ДатаДок;
    		Отбор = Новый Структура();
    		Отбор.Вставить("НомерДок", НомерДок);
    		//Отбор.Вставить("ДатаДок", ДатаДок);
    		ДокиДляЗагрузкиФильтр = ДокиДляЗагрузки.НайтиСтроки(Отбор);
    		ДатаНач = НачалоДня(Дата(ДатаДок));
    		ДатаКон = КонецДня(Дата(ДатаДок));
    		Запрос = Новый Запрос;
    		Запрос.Текст = "ВЫБРАТЬ
    		               |	РеализацияТоваровУслуг.Ссылка
    		               |ИЗ
    		               |	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    		               |ГДЕ
    		               |	РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон
    		               |	И РеализацияТоваровУслуг.Номер = &Номер";
    		Запрос.УстановитьПараметр("Номер", НомерДок);
    		Запрос.УстановитьПараметр("ДатаНач", ДатаНач);
    		Запрос.УстановитьПараметр("ДатаКон", ДатаКон);
    		Результат = Запрос.Выполнить().Выбрать();
    		Если Результат.Количество()=1 Тогда
    			Результат.Следующий();
    			СтрокаДок7 = ДокиДляЗагрузкиФильтр.Получить(0);
                            ...
                    КонецЕсли;
    КонецЦикла;

    //Поиск документа по номеру
    //Можно заменить одной строкой, но автор был истиный извращенец
    СтрокаДок7 = Документы.РеализацияТоваровУслуг.НайтиПо Номеру(СтрокаДоковЗагрузки.НомерДок, СтрокаДоковЗагрузки.ДатаДок);

    quickes, 21 Июля 2014

    Комментарии (18)