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

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

    +87

    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
    94. 94
    95. 95
    program lab_16;
     {$APPTYPE CONSOLE}
     uses
      windows,
      SysUtils;
     {#1. Дана строка, содержащая русский текст.
     Если в тексте нет слов-палиндромов длиной более 1-й буквы,
     то вывести слова текста в    соответствии с убыванием количества согласных,
     в противном    случае пpодублиpовать в словах текста гласные буквы и вывести
      полученные слова в поpядке, обpатном к алфавитному.}
      const nmax=100;
      Alf = ['А'..'Я','а'..'я'];
      rulett3 = ['А', 'Е', 'Ё', 'И', 'О', 'У', 'Ы', 'Э', 'Ю', 'Я', 'а', 'е', 'ё', 'и', 'о', 'у', 'ы', 'э', 'ю', 'я'];
     type Mas_slov=array[1..nmax] of string;
    
     procedure vvod(var a : Mas_slov; var n : integer);
     var stroka,str:string;
         i : integer;
     begin
          reset(input,'input.txt');
          read(stroka);
          str:='';
          n:=0;
          stroka:=stroka+' ';
          for i:=1 to length(stroka) do
           if stroka[i] in Alf then str:=str+stroka[i]
           else if str<>'' then begin
                 inc(n);
                 a[n]:=str;
                 str:='';
           end;
     end;
    
     function kolsog(x:string):integer;    {фунция нахождения кол-ва согл букв}
     var k,j,z:integer;
      begin
        z:=0;
        for k:=1 to length(x) do
        if not (x[k] in rulett3) then inc(z);
        kolsog:=z;
      end;
    
     function palin(x:string):boolean;     {проверка на палиндром}
     var z,i:integer;
     begin
        palin:=false;
        z:=0;
        for i:=1 to length(x) do
        if x[i]=x[length(x)+1-i] then z:=z+1;
      if z=length(x) then palin:=true;
     end;
    
     function prov(a : Mas_slov; n : integer):boolean;
     var i,j:integer;
     begin
     prov:=false;
     for i:=1 to n do
     if (length(a[i])>1) and (palin(a[i])=true) then prov:=true;
     end;
    
     procedure sort(var a:mas_slov; n: integer);
     var i,j:integer;
          st:string;
     begin
      for i:=1 to n-1 do
     for j:=i+1 to n do
     if kolsog(a[i])< kolsog(a[j]) then
     begin   st:=a[i]; a[i]:=a[j]; a[j]:=st; end;
     end;
    
     function dubl(x:string):string;  {дублирование гласных букв}
     var q:integer;
     begin
     q:=1;
     while q<>length(x)+1 do  begin
     if (x[q] in rulett3) then begin Insert(x[q],x,q); inc(q,2)end else inc(q); end;
     dubl:=x;
     end;
    
     procedure dubl2(var a:mas_slov; n:integer);
     var i:integer;
     begin
     for i:=1 to n do
     a[i]:=dubl(a[i]);
     end;
    
     procedure sort2(var a:mas_slov; n: integer);
     var i,j:integer;
          st:string;
     begin
        for i:=1 to n-1 do
        for j:=i+1 to n do
        if a[i]<a[j] then
        begin st:=a[i]; a[i]:=a[j]; a[j]:=st; end;
     end;

    basic, 14 Июня 2010

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

    +158

    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
    #include <math.h>
    #include <stdio.h>
    double zero = 0, three = 3, four = 4;
    class Complex
         {
            public:
            double &x, &y;
            Complex() : x(zero), y(zero) { }
            Complex( double &z ) : x(y), y(z) { }
            Complex( double &_x, double &_y ) : x(_x), y(_y) { }
         };
         double square( double const &x ) { return x * x; }
         double absValue( Complex &c ) { return sqrt( square(c.x)+square(c.y) ); }
         int main()
         {
             Complex c(four);
             printf( "absolute value is %g\n", absValue( c ) );
             return 0;
         }

    говно отсюда http://www.gimpel.com/html/bugs.htm

    xXx_totalwar, 13 Июня 2010

    Комментарии (13)
  4. PHP / Говнокод #3440

    +168

    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
    function func()
      	{
    		$func = array(
    			"*3jd9asl4ksh8kl" => "Core::psUser->updateSelf",
    			"*9dkvls3kfrj54a" => "Core::psUser->setPassword",
    			"*3lso35ne9d0kek" => "Core::psUser->login",
    			"*487fj409z91dkv" => "Core::psUser->register_step1",			
    			"*ns252lo3a8ps11" => "Core::psUser->register_step2",
    			"*ale93kvnwo4pdz" => "Core::psUser->closeRequest",
    			"*ble93kv1wo4pdz" => "Core::psUser->checkEmail",
    			"*wpv48k9k2054k1" => "Core::psUser->recover",
    			"*3lsd8cjfdl3mdk" => "Core::Exchange->startExchange",
    			"*42sd9cjfd24mdk" => "Core::Exchange->startExchangeNew",
    			"*53se9cjfd35mdk" => "Core::Exchange->ExchangeStep2",
    			"*64se0cjfd46mdk" => "Core::Exchange->ExchangeStep3",
    			"*4164-4622-1270" => "Core::Exchange->dest1",
    			"*8273-7121-7643" => "Core::Exchange->dest2",
    			"*8710-4879-0216" => "Core::Exchange->dest3",
    			"*5566-0506-6230" => "Core::Exchange->dest4",
    			"*0635-1830-1345" => "Core::Exchange->dest5",
    			"*3265-0565-4871" => "Core::Exchange->dest6",
    			"*0914-1921-7194" => "Core::Exchange->dest7",
    			"*8126-3901-3136" => "Core::Exchange->dest8",
    			"*2711-0035-9992" => "Core::Exchange->dest9",
    			"*2846-4302-4032" => "Core::Exchange->dest10",
    			"*3879-1991-4154" => "Core::Exchange->dest11",
    			"*8557-5244-6506" => "Core::Exchange->dest12",
    			"*9455-7047-8778" => "Core::Exchange->dest13",
    			"*7329-2394-7939" => "Core::Exchange->dest14",
    			"*4168-0400-0156" => "Core::Exchange->dest15",
    			"*4672-6100-6653" => "Core::Exchange->dest16",
    			"*4930-5681-4263" => "Core::Exchange->dest17",
    			"*2028-3904-4406" => "Core::Exchange->dest18",
    			"*3344-7461-9263" => "Core::Exchange->dest19",
    			"*9282-3030-8891" => "Core::Exchange->dest20",
    			"*8198-3749-8009" => "Core::Exchange->dest21",
    			"*7254-2894-6243" => "Core::Exchange->dest22",
    			"*7969-8488-0540" => "Core::Exchange->dest23",
    			"*0202-7596-3531" => "Core::Exchange->dest24",
    			"*3321-4063-6580" => "Core::Exchange->dest25",
    			"*8319-8427-1264" => "Core::Exchange->dest26",
    			"*9606-3792-8045" => "Core::Exchange->dest27",
    			"*0242-6362-5886" => "Core::Exchange->dest28",
    			"*9362-4435-1538" => "Core::Exchange->dest29",
    			"*9332-4235-1337" => "Core::Exchange->dest30",
    			"*5362-2352-1350" => "Core::Exchange->dest31",
    			"*3262-4356-1670" => "Core::Exchange->dest32",
    			"*4562-4786-9440" => "Core::Exchange->dest33",
    			"*3222-3454-1430" => "Core::Exchange->dest34",
    			"*6573-3226-5683" => "Core::Exchange->dest35",
    			"*6543-9807-2573" => "Core::Exchange->dest36",
    			"*3455-7639-6268" => "Core::Exchange->dest37",
    			"*4523-6563-0978" => "Core::Exchange->dest38",
    			"*3485-7339-6298" => "Core::Exchange->dest39",
    			"*3489-8339-6238" => "Core::Exchange->dest40",
    			"*5485-9339-6295" => "Core::Exchange->dest41",
    			"*3445-7369-6248" => "Core::Exchange->dest42",
    			"*3945-7769-3248" => "Core::Exchange->dest43",
    			"*5945-7369-3568" => "Core::Exchange->dest44",
    			"*8945-7769-3868" => "Core::Exchange->dest45",
    			"*5948-1369-3578" => "Core::Exchange->dest46",			
    			"*9362-4435-1539" => "Core::Order->setStatusByUser",
    			"*9864-4532-2579" => "Core::Feedback->saveFeedback"
    		);
    		return $func;
    	}

    Передача action'а с обфускацией.

    hdkeeper, 10 Июня 2010

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

    +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
    if($hour == 1){
    $hour = "01";
    }
    if($hour == 2){
    $hour = "02";
    }
    if($hour == 3){
    $hour = "03";
    }
    if($hour == 4){
    $hour = "04";
    }
    if($hour == 5){
    $hour = "05";
    }
    if($hour == 6){
    $hour = "06";
    }
    if($hour == 7){
    $hour = "07";
    }
    if($hour == 8){
    $hour = "08";
    }
    if($hour == 9){
    $hour = "09";
    }if($hour == 0){
    $hour = "00";
    }

    Marker689, 01 Июня 2010

    Комментарии (13)
  6. Java / Говнокод #3324

    +81

    1. 1
    if (loggedInUser.getEmail().equalsIgnoreCase( "" ) ) { ... }

    raorn, 26 Мая 2010

    Комментарии (13)
  7. Куча / Говнокод #3313

    +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
    @echo off
    if exist 3.txt del 3.txt
    : begin
    if "%1"=="" goto end
    echo %1 >> 3.txt
    copy 3.txt "%1" >4.txt
    shift
    goto begin
    : end
    dir *. /O-S /B  
    del *.
    del 3.txt
    del 4.txt

    Batch файл под DOS, студенческое задание было: написать *.bat файл, который выводит список аргументов в обратном порядке, например, на команду foo.bat qwe sdf fgh ty должен быть ответ ty fgh sdf qwe. Как-то не додумался я прибавлять аргументы в обратном порядке. и придумал, как это сделать средствами бат файла.

    dj_quake, 26 Мая 2010

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

    +157

    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
    // если IP в файле есть, выводим сообщение с уведомлением
    if ($file[$i]===$ip."\r\n"){
    	echo 'Вы уже голосовали. Но спасибо, что попытались.<br>';
    	break;
    	// если IP нет, тогда считаем рейтинг и записываем IP в файл
    } elseif ($file[$i]!=$ip."\r\n") {
    	// ********* СЧИТАЕМ РЕЙТИНГ *********
    	// открываем файл с рейтингом
    	$file_open=fopen("rate.txt", "a+");
    	$file_read=fgets($file_open);
    	// разбиваем данные по спецсимволу ':'
    	$dan=explode(":",$file_read);
    	// первое значение - сумма всех оценок, второе - кол-во проголосовавших юзеров
    	// добавляем к сумме оценок - полученную новую оценку
    	// добавляем к сумме юзеров - 1 человека
    	if ($_POST['rating_val']>=1 && $_POST['rating_val']<=5){
    	$r=$_POST['rating_val'];
    	$ocenka=$dan[0]+$r;
    	$users=$dan[1]+1;
    	$write=$ocenka.':'.$users;
    	ftruncate ($file_open, 0);
    	fwrite($file_open, $write);
    	}
    	// рейтинг считаем по формуле: (сумма оценок + текущая оценка) / (кол-во юзеров + 1 юзер)
    	$rating=substr(($dan[0]+$r) / ($dan[1]+1),0,3);
    	echo 'Ваш рейтинг: '.$rating.'<br>
    	Всего голосов: '.$users.'<br>';
    	// закрываем файл с рейтингом
    	fclose($file_open);
    	// ************************************
    	fwrite($open_ip, $ip."\r\n");
    	echo 'Ваш голос учтен. Спасибо.<br>'; 
    	break;
    } else {
    	echo 'Странно. Вопреки всякой логике, произошла ошибка, которая появиться не могла.<br>
    	Пожалуйста, <a href=mail.php>напишите нам письмо</a> и мы обязательно разберемся.';
    }

    Проверка в скриптике друга. Смотрим самый внешний IF, порадовала ветка else :)

    arsen, 24 Мая 2010

    Комментарии (13)
  9. Си / Говнокод #3285

    +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
    bool flag = getFlag();
    switch (flag)
    {
    case true:
        // do something
        break;
    case false:
        // do something else
        break;
    default:
       // do something more (??!)
    }

    бывает же...

    glook, 21 Мая 2010

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

    +112

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function detectSourceindex(aobject){
        for (i=0; i<tabobjlinks.length; i++){
        if (aobject==tabobjlinks[i]){
        tabsourceindex=i //source index of tab bar relative to other tabs
        break
        }
        }
        }

    Челы позиционируют себя как супер пупер команда разработчиков

    Vasiliy, 17 Мая 2010

    Комментарии (13)
  11. PHP / Говнокод #3219

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if (isset($_GET['prod_id'])) {
                $_GET['prod_id'] = trim(preg_replace("|[^0-9]+|uis","", $_GET ['prod_id']));      
    }
    if (isset($_REQUEST['prod_id'])) {
                $_REQUEST['prod_id'] = trim(preg_replace("|[^0-9]+|uis","", $_REQUEST ['prod_id']));      
    }        
    if (isset($_POST['prod_id'])) {
                $_POST['prod_id'] = trim(preg_replace("|[^0-9]+|uis","", $_POST ['prod_id']));      
    }

    minisot, 13 Мая 2010

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