1. C# / Говнокод #16297

    +129

    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
    void PrintAllChars()
            {
                for (int i = 0; i < 255; i++)
                {
                    if (i == 10 || i == 20 || i == 30 || i == 40...i == 250)
                    {
                        
                    }
                    else
                    {
                        Console.WriteLine((char)i);
                    }
                }
            }

    Увидел у однокурсницы. Не могла объяснить зачем нужно пропускать, каждый десятый символ. Но даже если у нее было предлог, не самый лучший код это делать.

    garmush, 10 Июля 2014

    Комментарии (124)
  2. Си / Говнокод #16296

    +136

    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
    void lcd_show(uint8_t number)
    {
        uint8_t digit3 = 0;
        uint8_t digit2 = 0;
        uint8_t digit1 = number > 99u ? 1u : 0;
    
        switch(number)
        {
            case 0u: 
                digit3 = 0u;
                digit2 = 0u;
            break;
            case 1u: 
                digit3 = 1u;
                digit2 = 0u;
            break;
    .....
    .....
            case 199u: 
                digit3 = 9u;
                digit2 = 9u;
            break;
            default:
                digit3 = '-';
                digit2 = '-';
                digit1 = 0;
            break;
        }
    
        display3d(digit3);
        display2d(digit2);
        display1d(digit1);
    }

    8-битный микроконтроллер, 32768Гц тактовая частота, батарейное питание, CPU по-максимуму в спячке для экономии энергии.
    Функции display3d(), display2d(), display1() отображают цифру в соответствующем знакоместе на 2.5 разрядном LCD от 0 до 199.
    Преобразование числа в BCD формат.
    Эта жесть даёт выигрыш порядка 10 мкА перед "обычным" преобразования с делениями на 10 за счёт меньшего времени работы CPU для расчёта. Вроде говнокод, но в данном случае оправдан, потому не воняет :)

    FlySnake, 09 Июля 2014

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

    +140

    1. 1
    customer.sponsor = sponsor != null ? sponsor : null

    musuk, 09 Июля 2014

    Комментарии (16)
  4. Perl / Говнокод #16294

    −143

    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
    $minfts = $maxfts = undef;
    $c=$l=$x=$z=0;
    while (($id, @a) = $sth->fetchrow_array) {
        $l++;
        next unless defined($t{$a[1]});
        $c++;
        $s{$id} = [$r, $id, @a];
        $x++ if $s{$id}{rc} && !$s{$id}{rm};
        $z++ if $s{$id}{rm};
        $s{$id}{t} = $t{$s{$id}{tid}};
        $s{$id}{bonuses} = 0;
        push @{$sid{$s{$id}{sid}}}, $id;
        ### PATCH3 ###
        $sid2pid{$s{$id}{sid}} = $s{$id}{id2};
        ### END PATH3 ###
        $minfts = $s{$id}{sd} if !defined($minfts) || $s{$id}{sd}<$minfts;
        $maxfts = $s{$id}{ed} if !defined($maxfts) || ($maxfts && $s{$id}{ed}>$maxfts) || !$s{$id}{ed};
    }
    $sth->finish;
    $l-=$c;

    Минимализм в название переменных

    ptaag, 09 Июля 2014

    Комментарии (14)
  5. Куча / Говнокод #16292

    +119

    1. 1
    http://rus-linux.net/MyLDP/BOOKS/drivers/linux-device-drivers-16.html

    Не говнокод, но улыбнуло от методов преподавания красноглазикам.
    "И Пагс быстро написал следующий файл proc_window.c ". БЫСТРО драйвер устройства почти в 100 строк накатал.
    Бедная Светка, ну и на задрота попала:(

    Pythoner, 09 Июля 2014

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

    +163

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    с сохранением авторского форматирования:
    
    <script type="text/javascript">
                    $(function() {
                       
                        if (<%= (orderedPartnerOffer != null).ToString().ToLower() %>) {
                            $('p','#idProjectStepContent<%= stepGuid %>').text('Ваша заявка успешно отправлена.');
             }
    
    </script>

    В джаваскрипте на онлоад проверить, есть ли значение у серверной переменной, чтобы с помощью жЭкУэээри обновить текст элемента. Ояебу. Кажется мы наняли сатану.

    adoconnection, 09 Июля 2014

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

    +156

    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
    <?
    $res = CIBlockSection::GetList(array(), array('IBLOCK_ID'=>'3', 'ACTIVE'=>'Y'));
    $res1 = CIBlockSection::GetList(array(), array('IBLOCK_ID'=>'3', 'ACTIVE'=>'Y'));
    ?>
    <table class="tableObjects">
        <tr>
            <?while($v = $res->GetNext()){
                ?><td><a href="/projects/list.php?SECTION_ID=<?=$v['ID']?>">
                    <?=CFile::ShowImage(CFile::GetPath($v['PICTURE']), 180, 160)?>
                </a></td><?
            }?>
        </tr>
        <tr>
            <?while($v = $res1->GetNext()){
                ?><td><b><a href="/projects/list.php?SECTION_ID=<?=$v['ID']?>"><?=$v['NAME']?></a></b></td><?
            }?>
        </tr>
    </table>

    Как минимум 2 раза обращаться к базе данных, чтобы разбить данные на 2 строки! Гениально!

    dimagyzeev, 09 Июля 2014

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

    +25

    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
    case 'z':
    {
    	int diff;
    	char const *sign;
    
    	if (t->tm_isdst < 0)
    	  continue;
    	continue;
    	if (diff < 0)
    	  {
    		sign = "-";
    		diff = -diff;
    	  }
    	else
    	  sign = "+";
    	pt = _add (sign, pt, ptlim);
    	diff /= 60;
    	pt = _conv ((diff / 60) * 100 + diff % 60, "%04d", pt, ptlim);
    }
    continue;

    https://github.com/Helco/PebbleLocalSim/blob/master/additionalSource/strftime.c

    байтоёбы-байтоёбики...
    для упоротых - строки 7 и 8.

    blackhearted, 08 Июля 2014

    Комментарии (8)
  9. JavaScript / Говнокод #16288

    +154

    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
    <script type="text/javascript">
        if (parent && parent != window && (browser.msie || browser.opera || browser.mozilla || browser.chrome || browser.safari || browser.iphone)) {
          document.getElementsByTagName('body')[0].innerHTML = '';
        } else {
          domReady();
          updateMoney(0);
    gSearch.init();
    if (window.qArr && qArr[5]) qArr[5] = [5, "by item", "", "goods", 0x00000100];
    if (browser.iphone || browser.ipad || browser.ipod) {
      setStyle(bodyNode, {webkitTextSizeAdjust: 'none'});
    }
    if (0) {
      hide('support_link_td');
    }
    var ts_input = ge('ts_input'), oldFF = browser.mozilla && parseInt(browser.version) < 8;
    if (browser.mozilla && !oldFF) {
      setStyle(ts_input, {padding: (vk.rtl ? '3px 20px 6px 40px' : '3px 41px 6px 20px')});
    }
    placeholderSetup(ts_input, {back: false, reload: true});
    if (browser.opera || browser.msie || browser.mozilla) {
      setStyle(ts_input, {padding: (vk.rtl ? '4px 20px 5px 40px' : '4px 41px 5px 20px')});
    } else if (browser.chrome || browser.safari) {
      setStyle(ts_input, {padding: (vk.rtl ? '4px 21px 5px 40px' : '4px 40px 5px 21px')});
    }
    
    ...
    
    window.tsHintsEnabled = 1;;setTimeout(function() {  try {    var elem = ge(String.fromCharCode.apply(null,[118,107,98,95,97,100,118]));    if (elem) {      ajax.post('/al_profile.php', {act: 'pro', section: 1, hash: '3f8471898e6269d08b'}, {onDone: function() {}, onFail: function() { return true; }});    }  } catch (e) {}}, 5000);
    __adsLoaded = false;
    
    ...
    
    cur.lang = extend(cur.lang || {}, {
      wall_link_label: 'Link',
      wall_my_friends_only: 'Only your friends can see this post',

    Перестала грузиться понятно какая соцсеточка, от нечего делать опять полез в сорцы html. Вперемешку инициализация поиска, битмаски и какой-то qArr[5], уконтрапупивание всего body по непонятному условию, стилизация, if(0), табуляция в соответствии с каким-то особым стандартом, локализация, вторая половина которой зачем-то подтягивается отдельным файлом. Про установку всех переменных прямо в window явно и неявно молчу.

    Fike, 08 Июля 2014

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

    +28

    1. 1
    2. 2
    // Пароль админа
    const unsigned int AdminPassword = 42;

    Откопал в своем старом коде. Кто тут говорил, что Борманд не говнокодит?

    bormand, 08 Июля 2014

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