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

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

    +135

    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
    // Дефолтный конструктор:
     public Random() 
            : this(Environment.TickCount) {
          }
    
    // Перенаправляемся сюда...
        public Random(int Seed) {
            int ii;
            int mj, mk;
        
            //Initialize our Seed array.
            //This algorithm comes from Numerical Recipes in C (2nd Ed.)
            mj = MSEED - Math.Abs(Seed);

    Очередной "изящный" говнокод в исходниках .NET.
    Говнокод в том, что Environment.TickCount через каждые 24,9 дней возвращает Int32.MinValue, который скормится Math.Abs, который резонно выкинет исключение OverflowException. Вроде бы мелочь, но... Вспомним теперь падение .NET-софта на Лондонской бирже и последующие миллионные убытки. Для загруженных non-stop-серверов непростительно. Хотя в принципе Microsoft аптаймами и не славился :)

    cfdev, 27 Апреля 2010

    Комментарии (43)
  3. PHP / Говнокод #2449

    +175.6

    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
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    <?php
    if (isset ($_POST['OOO'])) {$OOO = $_POST['OOO'];}
    if (isset ($_POST['OAO'])) {$OAO = $_POST['OAO'];}
    if (isset ($_POST['ZAO'])) {$ZAO = $_POST['ZAO'];}
    if (isset ($_POST['nazvanierus'])) {$nazvanierus = $_POST['nazvanierus'];}
    if (isset ($_POST['name'])) {$name = $_POST['name'];}
    if (isset ($_POST['email'])) {$email = $_POST['email'];}
    if (isset ($_POST['nazvanieeng'])) {$nazvanieeng = $_POST['nazvanieeng'];}
    if (isset ($_POST['juradres'])) {$juradres = $_POST['juradres'];}
    if (isset ($_POST['kapital'])) {$kapital = $_POST['kapital'];}
    if (isset ($_POST['denvznos'])) {$denvznos = $_POST['denvznos'];}
    if (isset ($_POST['imushvznos'])) {$imushvznos = $_POST['imushvznos'];}
    if (isset ($_POST['obich'])) {$obich = $_POST['obich'];}
    if (isset ($_POST['usn6'])) {$usn6 = $_POST['usn6'];}
    if (isset ($_POST['usn15'])) {$usn15 = $_POST['usn15'];}
    if (isset ($_POST['direktor'])) {$direktor = $_POST['direktor'];}
    if (isset ($_POST['gendirektor'])) {$gendirektor = $_POST['gendirektor'];}
    if (isset ($_POST['izuchr'])) {$izuchr = $_POST['izuchr'];}
    if (isset ($_POST['novoelico'])) {$novoelico = $_POST['novoelico'];}
    if (isset ($_POST['novoelico1'])) {$novoelico1 = $_POST['novoelico1'];}
    if (isset ($_POST['izuchrbuh'])) {$izuchrbuh = $_POST['izuchrbuh'];}
    if (isset ($_POST['novoelicobuh'])) {$novoelicobuh = $_POST['novoelicobuh'];}
    if (isset ($_POST['buh'])) {$buh = $_POST['buh'];}
    if (isset ($_POST['zaiavitel'])) {$zaiavitel = $_POST['zaiavitel'];}
    if (isset ($_POST['deiat'])) {$deiat = $_POST['deiat'];}
    if (isset ($_POST['inet'])) {$inet = $_POST['inet'];}
    if (isset ($_POST['press'])) {$press = $_POST['press'];}
    if (isset ($_POST['rekomend'])) {$rekomend = $_POST['rekomend'];}
    if (isset ($_POST['inoe'])) {$inoe = $_POST['inoe'];}
    if (isset ($_POST['koment'])) {$koment = $_POST['koment'];}
    if (isset ($_POST['name'])) {$name = $_POST['name'];}
    if (isset ($_POST['vashtel'])) {$vashtel = $_POST['vashtel'];}
    if (isset ($_POST['Submit'])) {$Submit = $_POST['Submit'];}
    $address = '[email protected]';
    $sub = "Сообщение с моего сайта от посетителя по имени". $name."Его адрес". $email;
    $mes = "Текст: $nazvanierus \n Указал свой адрес: $email \n Содержание письма: $message \n Русское название: $nazvanierus \n Англиское название: $nazvanieeng \n Юридический адрес: $juradres \n Уставной капитал: $kapital \n Денежный взнос: $denvznos \n Имущественный взнос: $imushvznos \n Обычное налогообложение: $obich \n УСН 6%: $usn6 \n УСН 15%: $usn15 \n Директор: $direktor \n Генеральный директор: $gendirektor \n Из учредителей: $izuchr \n Новое лицо: $novoelico \n Бух из учредителей: $izuchrbuh \n  Бух новое лицо: $novoelicobuh \n Бухгалтер: $buh \n Заявитель: $zaiavitel \n Деятельность: $deiat \n Из интернета: $inet \n Из прессы: $press \n По рекомендации: $rekomend \n Иное: $inoe \n Коментарий: $koment \n Имя: $name \n Телефон для связи: $vashtel \n";
    $verify = mail ($address,$sub,$mes,"Content-type:text/plain; 
    charset = windows-1251\r\nFrom:$email"); 
    If ($verify ='true') {echo "Всё отлично, ваше сообщение отправлено!";}
    Else {echo "Из-за сбоев сообщение не может быть доставлено";}
    ?>

    atarix12, 19 Января 2010

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

    +51.9

    1. 1
    2. 2
    3. 3
    #define GetNextWindow(hWnd, wCmd) GetWindow(hWnd, wCmd)
    #define GetSysModalWindow() (NULL)
    #define SetSysModalWindow(hWnd) (NULL)

    Microsoft SDK, WinUser.h.

    Altravert, 04 Января 2010

    Комментарии (43)
  5. Perl / Говнокод #2074

    −303.1

    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
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    (?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
    )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:
    \r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(
    ?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ 
    \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\0
    31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\
    ](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+
    (?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:
    (?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
    |(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)
    ?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\
    r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[
     \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)
    ?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t]
    )*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[
     \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*
    )(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
    )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)
    *:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+
    |\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r
    \n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:
    \r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t
    ]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031
    ]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](
    ?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?
    :(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?
    :\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?
    :(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?
    [ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] 
    \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|
    \\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>
    @,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"
    (?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t]
    )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
    ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?
    :[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[
    \]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-
    \031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(
    ?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;

    И в том же духе еще 43 строки. Регулярное выражение для проверки емейл адреса. Все на полном серьезе и в соответствии со стандартом. Взято отсюда http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html

    alabax, 30 Октября 2009

    Комментарии (43)
  6. C++ / Говнокод #248

    −63.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    void SimplexIteration::ReWidth()
    {  w[-2]=w[0]=Width; w[-1]=5; for(size_t j=1;j<A.size_j();j++) w[j]=Width;
       if (var) for(size_t j=1; j<A.size_j(); j++)
                   if(strlen(var[j])>w[j]) w[j]=strlen(var[j]);
    }

    Особенно порадовало w[-2]. Знаю, что так можно, но все равно говнисто.

    guest, 23 Декабря 2008

    Комментарии (43)
  7. Python / Говнокод #28796

    0

    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
    @dataclass(slots=True)
    class Govno:
        govno_index: int
        
        def patch(self, indices_dict: Dict[int, int]) -> None:
            new_index = indices_dict[self.govno_index]
            self.govno_index = new_index
    
    
    @dataclass(slots=True)
    class Mocha:
        mocha_index: int
        
        def patch(self, indices_dict: Dict[int, int]) -> None:
            new_index = indices_dict[self.govno_index]
            self.govno_index = new_index

    Метод «patch» был скопипащен из класса «Govno» в класс «Mocha». Тайпчекер никаких ошибок не показывал; все типы были выведены корректно.

    А в рантайме всё упало, что и неудивительно!

    ISO, 13 Июня 2023

    Комментарии (42)
  8. Haskell / Говнокод #28596

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    (define A (list 1 2 3 4 5))
    
    (define (reverse L)
      (let ((C (cdr L)))
        (if (not (null? C))
            (cons (reverse C) (car L))
            (car L))))
    
    (newline)
    (display (reverse A))
    (newline)

    Почему у меня получается х****й лист после реверсинга? :-(

    JloJle4Ka, 10 Февраля 2023

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

    −3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    Меня больше не торкает C++
    
    В попытках не потерять ясность ума и рассудка я вернулся к своему любимому делу, но какого же было моё удивление, когда я обнаружил что более не наслаждаюсь процессом.
    Ни страсти, ни истощения. Ничего. Процесс ничем не отличается от простого втыкания в красиво подсвеченные буквы IDE и блокнотов.
    Возможно я слишком долго не принимался за код, возможно пока я боролся со своими зависимостями я убил и эту, 
    возможно дело в том что я более не на Linux, возможно мои эмоции выгорели и осталась лишь одна материальная сущность, 
    не движимая ни в какой мере иррациональной мотивацией, или настолько сильно предаюсь эмоциям в других сферах, что не хватает на C++, теряюсь в догадках.
    Меня это волнует. Я который день не могу собраться с мыслями, наслаждаться жизнью. Я практически потерял наслаждение от 
    огромной части себя, от той части, что определяла меня таким какой я есть, что сделала меня воистину свободной, позволявшей уходить от реальности и глупостей.
    Я изменился, я потерял контроль, люди более не могут меня выносить из-за того что я выкладываю им сотни слов с тысячами смыслов за минимальное время практически скороговоркой.

    kcalbCube, 05 Сентября 2022

    Комментарии (42)
  10. C++ / Говнокод #28124

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    auto&& rv = elements | std::ranges::views::values | std::ranges::views::transform([](auto&& a) -> auto 
    		{
    			StatisticsElementMultiple n = std::move(a);
    			n.nanosec /= n.count;
    			return n;
    		});
    		std::vector<StatisticsElementMultiple> el(std::begin(rv), std::end(rv));
    		std::ranges::sort(el, [](auto&& a, auto&& b) -> bool {return a.nanosec > b.nanosec; });
    		for(auto&& [nanosec, name, prefixes, count] : el)
    		{
    			printf("%-10d %04X %12s %6d\n", count, prefixes, name.c_str(), nanosec);
    		}

    kcalbCube, 18 Апреля 2022

    Комментарии (42)
  11. JavaScript / Говнокод #27569

    +2

    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
    class S
    {
    	print()
    	{
    		print("Hello World");
    	}
    }
    
    interface IPrn
    {
    	print();
    }
    
    function run(iface:IPrn)
    {
    	iface.print();
    }
    
    function main() {
    	const s = new S();
    	let iface = <IPrn>s;
    	iface.print();	
    	run(s);
    }

    короче новый говнокод подоспел. Т.к. вы все тут самые умные я не раскажу в чем фича. Сами догадаетесь

    ASD_77, 15 Августа 2021

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