1. C++ / Говнокод #5810

    +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
    #include <fstream>
    #include <string>
    #include <vector>
    using namespace std;
    
    int main()
    {
        fstream in("z.in", ios::in);
        fstream out("z.out", ios::out);
    
        string s;
        in >> s;
    
        in.close();
    
        vector<size_t> z(s.length());
        z[0] = s.length();
        for (size_t i = 1, l = 0, r = 0, j = 0, k = 0; i < s.length(); (i > r) ? ((s[i + j] == s[j]) && ((j + i) < s.length()) ? ++j : (((z[l = i] = j, r = i + j - 1), j = 0), ++i)) : ((z[i - l] < r - i + 1) ? ((z[i] = z[i - l]), ++i) : (((s[r + k] == s[r - i + k]) && ((k + r) < s.length())) ? ++k : (((z[l = i] = r - i + k, r = r + k - 1), k = 1), ++i))));
    
        for(size_t i = 1; i < s.length(); ++i)
        {
            out << z[i] << " ";
        }
    
        out << flush;
        out.close();
    
        return 0;
    }

    Z-функция в одну строчку. плод больного воображения и лишнего времени

    finomen812, 26 Февраля 2011

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

    +175

    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
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    <?php
    echo "<html>";
    echo "<meta http-equiv=\"Content-Language\" content=\"ru\">";
    echo "<meta http-equiv=\"Content-type\" content=\"text/html;charset=windows-1251\">";
    echo "<title>Сайт о программировании</title>";
    echo "<head>";
    echo "<h1>Сайт о программировании</h1>";
    echo "<link rel=\"stylesheet\" href=\"http://www.hut.ru/style.css\" type=\"text/css\">";
    echo "</head>";
    echo "<body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#336699\" vlink=\"#336699\" alink=\"#336699\">";
    echo "<a href=\"http://top100.rambler.ru/top100/\"><img src=\"http://counter.rambler.ru/top100.cnt?671399\" alt=\"Rambler's Top100\" width=1 height=1 border=0></a>";
    echo "<p align=\"center\"><a href=\"http://www.hut.ru\"><img src=\"http://www.hut.ru/imgs/logo.gif\" width=\"334\" height=\"48\" border=\"0\" alt=\"Hut.Ru - лучший бесплатный хостинг\"></a> <img src=\"http://www.hut.ru/imgs/pixel.gif\" width=\"186\" height=\"1\" border=\"0\" alt=\"\"> <a href=\"http://www.hut.ru\"><img src=\"http://www.hut.ru/imgs/yctw2.gif\" width=\"230\" height=\"48\" border=\"0\" alt=\"Лучший дом для Вашего сайта!\"></a></p>";
    echo "<h2>Временная страница</h2>";
    echo "<p><a href=../>К оглавлению</a></p>";
    echo "<form action=\"D/\" method=\"post\">";
    echo "<table>";
    echo "<tr><td>Login:</td><td><input type=\"text\" name=\"Login\" value=\"\"></td></tr>";
    echo "<tr><td>Password:</td><td><input type=\"password\" name=\"Password\" value=\"\"></td></tr>";
    echo "</table>";
    echo "<input type=\"submit\" value=\"Войти\">";
    echo "</form>";
    echo "<p><a href=http://www.cyberforum.ru>Киберфорум</a></p>";
    echo "<h3>Гостевая книга</h3>";
    echo "<p><a href=http://www.codesite.hut2.ru/cgi-bin/guestbook/guestbook.pl>Читать</a></p>";
    echo "<p><a href=http://www.codesite.hut2.ru/guestbook.html>Писать</a></p>";
    echo "<p><a href=\"mailto:[email protected]?subject=From the user of the site www.codesite.hut2.ru\">Напиcать администратору сайта</a></p>";
    echo "</body>";
    echo "</html>";
    ?>
    
    -------------------------
    
    <?php
    echo "<html>";
    echo "<meta http-equiv=\"Content-Language\" content=\"ru\">";
    echo "<meta http-equiv=\"Content-type\" content=\"text/html;charset=windows-1251\">";
    echo "<title>Сайт о программировании</title>";
    echo "<head>";
    echo "<h1>Сайт о программировании</h1>";
    echo "<link rel=\"stylesheet\" href=\"http://www.hut.ru/style.css\" type=\"text/css\">";
    echo "</head>";
    echo "<body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#336699\" vlink=\"#336699\" alink=\"#336699\">";
    echo "<a href=\"http://top100.rambler.ru/top100/\"><img src=\"http://counter.rambler.ru/top100.cnt?671399\" alt=\"Rambler's Top100\" width=1 height=1 border=0></a>";
    echo "<p align=\"center\"><a href=\"http://www.hut.ru\"><img src=\"http://www.hut.ru/imgs/logo.gif\" width=\"334\" height=\"48\" border=\"0\" alt=\"Hut.Ru - лучший бесплатный хостинг\"></a> <img src=\"http://www.hut.ru/imgs/pixel.gif\" width=\"186\" height=\"1\" border=\"0\" alt=\"\"> <a href=\"http://www.hut.ru\"><img src=\"http://www.hut.ru/imgs/yctw2.gif\" width=\"230\" height=\"48\" border=\"0\" alt=\"Лучший дом для Вашего сайта!\"></a></p>";
    echo "<h2>Временная страница</h2>";
    echo "<p><a href=../../>К оглавлению</a></p>";
    if (/*Здесь проверка и валяется*/)
    {
     echo "<p>Вход произведён.</p>";
     echo "<table border=1 width=100%>";
     echo "<tr>";
     echo "<td>";
     echo "</td>";
     echo "</tr>";
     echo "</table>";
    }
    else
    {
      echo "<p>Не правильный логин/пароль, вернитесь <a href=../>назад</a>.</p>";  
    }
    echo "<p><a href=http://www.cyberforum.ru>Киберфорум</a></p>";
    echo "<h3>Гостевая книга</h3>";
    echo "<p><a href=http://www.codesite.hut2.ru/cgi-bin/guestbook/guestbook.pl>Читать</a></p>";
    echo "<p><a href=http://www.codesite.hut2.ru/guestbook.html>Писать</a></p>";
    echo "<p><a href=\"mailto:[email protected]?subject=From the user of the site www.codesite.hut2.ru\">Напиcать администратору сайта</a></p>";
    echo "</body>";
    echo "</html>";
    ?>

    Я конечно не супер мега кодер, но это убило даже меня

    nepster, 26 Февраля 2011

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

    −95

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    switch(cbChanges.selectedIndex)
    {
         case 1:
                changes = CHANGES_MODIFIED_STATUS;
                break;
         case 1:
                changes = CHANGES_JOINERS_STATUS;
                break;
         case 1:
                changes = CHANGES_LEAVERS_STATUS;
                break;
    }

    Epic Fail!

    dimas_art, 25 Февраля 2011

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

    +131

    1. 1
    if (Edit40.Text<>t1) and (Edit38.Text<>t1) and (Edit36.Text<>t1) and (Edit34.Text<>t1) and (Edit32.Text<>t1) and (Edit30.Text<>t1) and (Edit28.Text<>t1) and (Edit26.Text<>t1) and (Edit24.Text<>t1) and (Edit22.Text<>t1) and (Edit20.Text<>t1) and (Edit18.Text<>t1) and (Edit16.Text<>t1) and (Edit14.Text<>t1) and (Edit12.Text<>t1) and (Edit10.Text<>t1) and (Edit8.Text<>t1) and (Edit6.Text<>t1) and (Edit4.Text<>t1) and (edit2.Text<>t1) ...

    Старый мем с форума:
    "Здрасте, вообщем такая проблемка:
    У меня Unit10.pas занимает 13378 КБ (13.0 МБ)
    И при работе в коде 10 формы после 5-10 изменений делфи начинает виснуть на 5-20 сек. (приходится вырезать весь текс кроме нужной процедуры и т.д, вставлять в блокнот, писать процедуру и затем обратно вставлять в делфи вырезанный текст из блокнота).
    И компелируется тож долговато.
    Всего 59988 строк.
    На строчке 400-500 знаков (эт только там где условие, но часть условия(для удобства) переходит на 2 строчку (если все вместить, то будет примерно 35000 строк))
    ____________________________________
    Постараюсь нормально сформулировать что хочу сделать.
    Есть часть условия:
    (код выше. прим. ReallyBugMeNot)
    ____________________________________
    Оно повторяется если быть точным 4200 раз.
    Изменяются только "номера\имена" эдитов (только четные от 2 до 240) и "t1" (t2, t3, t4, .. ,t35).
    Хотелось бы задать переменную (Например "Z") и присвоить ей это условие, но так чтобы переменные "t1, t2, t3, .. ,t35)" и "имена\номера" эдитов задавались в каждой процедуре (всего 6 процедур), где находится оставшееся часть условия.
    Можите подсказать как мне это реализовать?
    Зарание спс."

    Остается только удивлятся терпеливости человека, который позволил исходнику разростись до тринадцати мегов, прежде чем заметил, что что то не так.

    ReallyBugMeNot, 25 Февраля 2011

    Комментарии (29)
  5. PHP / Говнокод #5806

    +159

    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
    <?
    			if(($socle == 1302 || $socle == 2723 || $socle == 2723 || $socle == 211) && ($power == 1816 || $power = 1296 || $power = 2741 || $power = 2741 || $power = 216  || $power = 1854))//G9 40W
    				{echo '<br/><a href="/catalog/?id=1&section=2163&dep=12">Купить лампочку: цоколь G9, мощность 40W</a>';}
    			else if(($socle == 1324 || $socle == 2964 || $socle == 212) && ($power == 1826 || $power == 2942 || $power == 1325 || $power == 1861 || $power == 217  || $power == 1734))//GU10 50W
    				{echo '<br/><a href="/catalog/?id=2&section=2163&dep=12">Купить лампочку: цоколь GU10, мощность 50W</a>';}
    			else if(($socle == 2855 || $socle == 1294 || $socle == 2733 || $socle == 1883 || $socle == 1721) && ($power == 1816 || $power = 1296 || $power = 2741 || $power = 2741 || $power = 216  || $power = 1854))//E14 40W
    				{
    				echo '<br/><a href="/catalog/?id=3&section=2163&dep=12">Купить лампочку: цоколь E14, мощность 40W</a><br/>';
    				echo '<br/><a href="/catalog/?id=4&section=4212&dep=12">Купить энергосберегающую лампочку: цоколь E14, мощность 7W</a>';
    				}
    			else if(($socle == 2748 || $socle == 1305 || $socle == 3051 || $socle == 203 || $socle == 1724) && ($power == 1816 || $power = 1296 || $power = 2741 || $power = 2741 || $power = 216  || $power = 1854))//E27 40W
    				{
    				echo '<br/><a href="/catalog/?id=5&section=2162&dep=12">Купить лампочку: цоколь E27, мощность 40W</a><br/>';
    				echo '<br/><a href="/catalog/?id=6&section=4212&dep=12">Купить энергосберегающую лампочку: цоколь E27, мощность 11W</a>';
    				}
    			else if(($socle == 2748 || $socle == 1305 || $socle == 3051 || $socle == 203 || $socle == 1724) && ($power == 1919 || $power = 1817 || $power = 5163 || $power = 1306 || $power = 2727 || $power = 205 || $power = 3052 || $power = 1850))//E27 60W
    				{
    				echo '<br/><a href="/catalog/?id=7&section=2162&dep=12">Купить лампочку: цоколь E27, мощность 60W</a><br/>';
    				echo '<br/><a href="/catalog/?id=8&section=4212&dep=12">Купить энергосберегающую лампочку: цоколь E27, мощность 11W</a>';
    				}
    			else if(($socle == 2748 || $socle == 1305 || $socle == 3051 || $socle == 203 || $socle == 1724) && ($power == 1919 || $power = 1817 || $power = 5163 || $power = 1306 || $power = 2727 || $power = 205 || $power = 3052 || $power = 1850))//E27 60W
    				{
    				echo '<br/><a href="/catalog/?id=9&section=2162&dep=12">Купить лампочку: цоколь E27, мощность 60W</a><br/>';
    				echo '<br/><a href="/catalog/?id=10&section=4212&dep=12">Купить энергосберегающую лампочку: цоколь E27, мощность 11W</a>';
    				}		
    		?>

    Говнокодеры не спят, они какают и какают :))))
    Учитесь, как надо давать покупателю возможность выбрать подходящую лампочку)

    greevex, 25 Февраля 2011

    Комментарии (17)
  6. Pascal / Говнокод #5805

    +85

    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
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    // ComPort1: TComPort; компонент для работы RS-232
    type
     Tst5=string[5];
    var
      Form1: TForm1;
      lastcnl:byte;
      CommonShiftTT:integer;
      roundtt:integer;
      Start_Proces:boolean;
      intN,intdg0,intdg50:integer;
      cerr,cerr0,cerr50:integer;
      intdg:integer;
      cnl:integer;
      b:array [1..5]of byte;
      s,sdg50,sdg0,ss:Tst5;
      tt,realdg:real;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.ComPort1RxBuf(Sender: TObject; const Buffer;
      Count: Integer);
    var
      i:integer;
      p:pointer;
    begin
     for i:=1 to 5 do b[i]:=0;
     ListBox1.Items.clear;
     if ComPort1.Connected then begin
        p:=@Buffer;
        b[1]:=byte(p^);
      end
      else begin
        exit;
      end;
      cnl:=b[1];
      if cnl=0 then begin
        Start_Proces:=true;
      end;
      ListBox1.Items.Add(inttostr(cnl));
      if Start_Proces=true then begin
        b[2]:=Byte(pointer(longint(p)+1)^);
        b[3]:=Byte(pointer(longint(p)+2)^);
        b[4]:=Byte(pointer(longint(p)+3)^);
        b[5]:=Byte(pointer(longint(p)+4)^);
    
        if (b[2] and $20)>0 then ss[1]:='+' else ss[1]:='-';
        if (b[2] and $40)>0 then ss[2]:='0' else ss[2]:='1';
    
        FOR i:=3 TO 5 DO begin
        case b[i] of
              $82:ss[i]:='0';
              $CF:ss[i]:='1';
              $A4:ss[i]:='2';
              $85:ss[i]:='3';
              $C9:ss[i]:='4';
              $91:ss[i]:='5';
              $90:ss[i]:='6';
              $C7:ss[i]:='7';
         {min}$80:ss[i]:='8';
              $81:ss[i]:='9';
              $FF:ss[i]:='x'
            else ss[i]:=chr(b[i]);
        end;
        ss[0]:=#5;
    
        case cnl of
          0:begin
            vaL(ss,intdg0,cerr0);
            stR(intdg0,sdg0);
            Label1.Caption:=inttostr(intdg0);
          end;
          1:begin
            vaL(ss,intdg50,cerr50);
            stR(intdg50,sdg50);
            Label2.Caption:=inttostr(intdg50);
          end;
          2..26:begin
            vaL(ss,intN,cerr);
            intN:=intN-intdg0+CommonShiftTT;
            realdg:=intN/((intdg50-intdg0)/500);{real type}
            intdg:=SMALLINT(round(realdg));{integer type}
            tt:=intdg/10;
            roundtt:=SMALLINT(round(tt));{integer}
            stR(roundtt:5,s);
          end;
        end;
      end;
      ListBox1.Items.Add('float='+floattostr(tt));
      ListBox1.Items.Add(inttostr(cnl)+'='+ss+' = '+inttostr(roundtt));
     end;
    end;

    Процедура приема и обработки Кодов АЦП с контроллера. Контроллер обрабатывает данные полученные с температурных (аналоговых) датчиков и передает на COM в цифровом виде.
    Сделано для АКГУП Индустриальный г. Барнаул

    zak, 25 Февраля 2011

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

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function get_current_screen() {
    	global $current_screen;
    
    	if ( !isset($current_screen) )
    		return null;
    
    	return $current_screen;
    }

    Да и вообще, что это за мода использовать такое количество глобальных переменных как использовано в WP?

    sectus, 25 Февраля 2011

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

    +178

    1. 1
    e.voiceMail = !!e.voiceMail;

    поле voiceMail имеет тип bool. Привет из солнечного кетая

    dzagy, 25 Февраля 2011

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

    +32

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // trololo protection
      if (count($nodes) > ADVIMAGE_GALLERY_MAX_IMAGES_IN_GALLERY) {
        $result = array(
          'jsonrpc' => '2.0', 
          'result' => 'error',
          'error_token' => t(
            'You try add more than !count images to gallery', 
            array('!count' => ADVIMAGE_GALLERY_MAX_IMAGES_IN_GALLERY) 
          ),
        );
        die(drupal_to_js($result) );
      }

    хрясь... JSON такой JSON. на случай хитровыебаных любителей отлаживать JS )

    brainstorm, 25 Февраля 2011

    Комментарии (0)
  10. PHP / Говнокод #5801

    +164

    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
    <?php
    // Создаём функцию struktura_array (массив со значениями)
    function struktura_array($mas) {
    //Подсчитываем количество значений в массиве $mas
    $col_el = count($mas);
    //Подсчитываем количество всевозможных вариантов по формуле 2^n – 1, n = $col_el
    $col_zn = pow(2,$col_el)-1;
    
    //Делаем цикл до $i = $col_zn
    for ($i=1; $i <= $col_zn; $i++) {
    //выполняем преобразование числа $i в двоичную систему
     $dlina_i_bin = decbin($i);
    //Дописываем нули в левую часть на длину $col_el
     $zap_str = str_pad($dlina_i_bin, $col_el, "0", STR_PAD_LEFT);
    //Переворачиваем $zap_str
     $zap_dop = strrev($zap_str);
     $dooh = array();
    //Преобразуем $zap_dop в массив вида Array (0=>"0", 1=>"1", 2=>"1", 3=>"0", 4=>"0")
     for($j=0; $j < $col_el; $j++) {
     $dooh[] = $zap_dop[$j];
     }
    //Обнуляем $d и $a чтоб при следующем проходе цикла они были пустыми
     $d = 0; $a = "";
    //Теперь самое интересное
    //Итерируем по массиву $dooh и выдергиваем значения (либо 1 либо 0)
     foreach ($dooh as $k=>$v) {
    //Если выдернули 1 то в массив $a записываем значение с соответствующим ключом
       if ($v == 1) {$a[] .= $mas[$d];}
    //Увеличиваем ключ на единицу для перехода по массиву
       $d++;
     }
     $return[] = $a;
    }
    
    return $return;
    }

    qbasic, 25 Февраля 2011

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