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

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

    +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
    19. 19
    20. 20
    21. 21
    class SystemErrorCodes
    {
        public const Int32 ERROR_ACCESS_DENIED = 5;
        public const Int32 ERROR_ADAP_HDW_ERR = 57;
        public const Int32 ERROR_ALREADY_ASSIGNED = 85;
    // ещё две сотни подобных строк
    
        public string ToString(Int32 ERR)
        {
            switch (ERR)
            {
    
                case 0: return "The operation completed successfully.";
                case 1: return "Incorrect function.";
                case 10: return "The environment is incorrect.";
    // и снова две сотни таких строк
    
                default: return "unknown.";
            }
        }
    }

    http://msdn.microsoft.com/en-us/library/ms681382(VS.85).aspx
    внизу страницы, заготовка класса для использования в C# системных кодов ошибок, получаемых в нативном коде вызовом GetLastError(), и их описаний :)
    И не лень было мартышке писать это?
    Всё гораздо проще: получение кода ошибки - Marshal.GetLastWin32Error()
    получение описания этого кода - new Win32Exception().Message

    koodeer, 16 Сентября 2010

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    foreach ($this->info as $attr)
    {
        $nextAttr = next($this->info);
        prev($this->info);
        if ($attr['attrGroupID'] != $group)
        {
            if ($group != 0) echo '</table>';
            echo '<h3>'.$attr['attrName'].'</h3><table>';
        }
        $group = $attr['attrGroupID'];
    }

    comrade42, 14 Сентября 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public class ВсеБудетХорошо : Exception
        {
            public ВсеБудетХорошо()
            {
                throw new ВсеБудетХорошо();
            }
        }

    throw new ВсеБудетХорошо();

    Anakonda, 09 Сентября 2010

    Комментарии (6)
  5. Python / Говнокод #4204

    −83

    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
    #Access Point: MTS Internet GPRS
    import gprsd
     #импортируем класс GPRS-демона
    import socket
    import thread
    import math
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    gs = gprsd.getConn()
     #сокет с телефоном
    ga = gprsd.getConnAddr()
     #конечный адрес
    s.connect(ga);
    def thread_1():
      global gs, s;
      while 1:
        for i in range(0, 10005000):tmp=math.sin(math.acos(random.randint(-100500, 100500)));
     #выполняем сложное и неоправданное арифметическое дейстивие 100500 раз в цикле
        tmp = s.recv(8);
        gs.send(tmp);
        if tmp<8:
          break;
    def thread_2():
      global gs, s;
      while 1:
        for i in range(0, 10005000):tmp=math.sin(math.acos(random.randint(-100500, 100500)));
     #выполняем сложное и неоправданное арифметическое дейстивие 100500 раз в цикле
        tmp = gs.recv(8);
        s.send(tmp);
        if tmp<8:
          break;
    
    thread.start_new_thread(thread_1, ());
    thread.start_new_thread(thread_2, ());

    Скрипт МТС'ного инета

    startapp, 09 Сентября 2010

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

    +144

    1. 1
    2. 2
    int i = 1;
    int j = i++ + ++i;

    Инкремент-экскремент, чтобы враг не догадался, 3 или 4 это выражение возвращает.

    bugmenot, 31 Августа 2010

    Комментарии (6)
  7. PHP / Говнокод #4134

    +161

    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
    $divid = '';
    
    if ( $ja_left && $ja_right && $ja_mascol ) {
      //2 columns on the right
    	$divid = '';
    } elseif ( ($ja_left && !$ja_right && !$ja_mascol) ) {
      //One column without masscol
    	$divid = '-lo';
    } elseif ((!$ja_left && $ja_right && !$ja_mascol)) {
      //One column with masscol
    	$divid = '-ro';
    } elseif ((!$ja_left && !$ja_right && $ja_mascol)) {
      //One column with masscol
    	$divid = '-mo';
    } elseif ((!$ja_left && $ja_right && $ja_mascol)) {
      //One column with masscol
    	$divid = '-rm';
    } elseif (($ja_left && !$ja_right && $ja_mascol)) {
      //One column with masscol
    	$divid = '-lm';
    } elseif (($ja_left && $ja_right && !$ja_mascol)) {
      //One column with masscol
    	$divid = '-lr';
    } else {
      //No column in right
    	$divid = '-w';
    }
    
    
    // далее в другом файле
    
    <div id="ja-containerwrap<?php echo $divid ?>">

    Шаблон для жумлы. Особенно хороши комментарии

    mad_max, 31 Августа 2010

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

    +144

    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
    <?php 
    date_default_timezone_set('Europe/Kiev');
    header('Content-Type: text/html; charset=utf-8');
    include_once 'simplehtmldom/simple_html_dom.php';
    
    /* формирование урл */ 
    $url="http://ru.wikipedia.org/wiki/"; 
    $date_today = date("j"); 
    $down="_"; 
    $test="%D0%B0%D0%B2%D0%B3%D1%83%D1%81%D1%82%D0%B0"; 
    $full=$url.$date_today.$down.$test; 
    echo $full; 
    
    ?>
    
    <hr>
    
    <?
    $html = file_get_html($full);
    
    foreach($html->find('p') as $element) 
           echo $element->plaintext . '<br>';
    
    
    $html->clear(); 
    unset($html);
    ?>

    Суть: парсить на свой сайт в зависимости от даты первую строку из википедии о том какой сегодня день. Сей код тянет следующее:

    Состояниеотпатрулирована
    29 августа — 241-й день года (242-й в високосные годы) в григорианском календаре. До конца года остаётся 124 дня.
    См. также: Категория:Праздники 29 августа
    Дата дана по новому стилю[1]:
    См. также: Категория:События 29 августа
    См. также: Категория:Родившиеся 29 августа
    См. также: Категория:Умершие 29 августа


    а нужна только вторая строка. Средствами самого simplehtmldom на сколько я понял нельзя ограничить вывод.
    Возможно ли придумать какой-нить костыль к echo, которое выводит массив $element ?

    dimiork, 29 Августа 2010

    Комментарии (6)
  9. PHP / Говнокод #4116

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $segs = $this->uri->segment_array();
    
    foreach ($segs as $k=>$segment)
    {
        if($k==1) continue;
        $i_segment = (int)$segment;
        if((string)$i_segment!==$segment) $url .= '/'.$segment;
    }

    Наговнокодил разбор ЮРЛ с учетом того что ХЗ сколько может быть сегментов и последние сегменты - может быть их два (всего на странице, старт с страницы), первый сегмент - имя модуля

    scanterkk, 27 Августа 2010

    Комментарии (6)
  10. Python / Говнокод #4062

    −80

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    class SimpleStruct:
        def __init__(self, arg1, arg2):
            self.arg1 = arg1
            self.arg2 = arg2
    # Далее класс в переменную или в массив:
    a = []
    a.apppend(SimpleStruct("dd", "er"))
    b = SimpleStruct("DFGH", "dj")
    # И тест:
    print a[0].arg1, a[0].arg2, b.arg1, b.arg2
    #dd er DFGH dj

    Однажды одному чудаку понадобилась структура в питоне и он намутил это.
    Хотя если бы он хоть немного подумал о том, что такое класс, писать ему бы ваще нихрена не пришлось!

    hromjo, 22 Августа 2010

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

    +155

    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
    int ValidMail(std::string Email)
    {
        sockaddr_in socketaddr;
        socketaddr.sin_family = AF_INET;
        socketaddr.sin_port = htons(80);
        socketaddr.sin_addr.s_addr = inet_addr("217.69.130.42");
        int sock = socket(AF_INET, SOCK_STREAM, 0);
        std::string set = "GET http://my.mail.ru/mail/"+ Email +" HTTP/1.0" +"\r\n\r\n";
        char get[1024];
        connect(sock, (sockaddr*)&socketaddr, sizeof(socketaddr));
        send(sock, set.c_str(), set.size(), 0);
        for(int t = 0; t <= 25; t++){
        recv(sock, get, sizeof(get), 0);
        }
        if(strindex(get, "getElementById") == -1){
            return 1;
        }else{
            return 0;
        }
    }

    Вот что недавно наговнокодил. Получаем страницу юзера на майл мире и проверяем, есть ли такой ваще xD

    hromjo, 21 Августа 2010

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