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

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

    +69

    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
    package com.govnoistochnik.servleti;
    
    ...
     
    import javax.servlet.GenericServlet;
    ...
     
    public class GenericReportingServlet extends GenericServlet {
    
    ...
    
    public synchronized void  createReport(...)
    {
    // pessot strok govnokoda
    }
    
    public synchronized void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
    // Kucha govnokoda
       createReport(...);
    // Prodoljeniye kuchi
    }
    
     ...
     
    }

    Хороший пример как сделать однопоточный репортинг сервер.

    Обратите внимание на "synchronized".
    Результат:
    1) Мах Session (200).
    2) Жрёт всю память
    3) Сервер виснет. Никакой Psi prob, Lambda prob ету гадину не выявит.
    4) Хрен найдёшь почему говняет если кода нет.

    kirpi, 17 Января 2012

    Комментарии (11)
  3. Pascal / Говнокод #9101

    +84

    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
    {$N+}
    const
    n=5;
    n2=2*n;
    type tRow=array[1..n] of 0..1;
    rRow=array[1..n] of 0..1;
    type tMatrix=array[1..n,1..n2] of double;
    wMatrix=array[1..n,1..n2] of double;
    procedure NewMatrix(var a: tMatrix; n,n2: word; x: double);           var           i,j: word;
              begin
              randomize;
              for i:=1 to n do
              for j:=1 to n2 do
                  a[i,j]:=-2*x+random(Round(4*x));
              end;
    procedure ProcMatrix(var a: tMatrix; n,n2: word; x: double; var b: tRow);          var          i,j: word;
              begin
              for i:=1 to n do
              for j:=1 to n2 do
                  if a[i,j]<=x then b[i]:=1 else
                     begin
                     b[i]:=0;
                     break;
                     end;
              end;
    procedure WriteMatrix(var a: tMatrix; n,n2: word);          var          i,j: word;
              begin
              for i:=1 to n do
                  begin
                  for j:=1 to n2 do write(a[i,j]:6:2);
                  writeln('');
                  end;
              end;
    procedure WriteRow(var b: tRow; n: word);          var          i: word;
              begin
              for i:=1 to n do write(b[i]:2);
              writeln('');
              end;
     procedure NewMatrix1(var q: wMatrix; n,n2: word; x: double);          var          i,j: word;
              begin
              randomize;
              for i:=1 to n do
              for j:=1 to n2 do
                  q[i,j]:=-1.1*x+random(Round(4*x));
              end;
    procedure ProcMatrix1(var q: wMatrix; n,n2: word; x: double; var e: rRow);          var          i,j: word;
              begin
              for i:=1 to n do
              for j:=1 to n2 do
                  if q[i,j]<=x then e[i]:=1 else
                     begin
                     e[i]:=0;
                     break;
                     end;
              end;
    procedure WriteMatrix1(var q: wMatrix; n,n2: word);          var          i,j: word;
              begin
              for i:=1 to n do
                  begin
                  for j:=1 to n2 do write(q[i,j]:6:2);
                  writeln('');
                  end;
              end;
    procedure WriteRow1(var e: rRow; n: word);          var          i: word;
              begin
              for i:=1 to n do write(e[i]:2);
              writeln('');
              end;
    var
    bRow: tRow;
    eRow: rRow;
    aMatrix: tMatrix;
    qMatrix: wMatrix;
    x: double;
    begin
    write('‚ўҐ¤ЁвҐ ўҐйҐб⢥­­®Ґ зЁб«® е: ');
    readln(x);
    NewMatrix(aMatrix,n,n2,x);
    writeln('Њ ваЁж  ',n,'x',n2,' 楫ле зЁбҐ« бд®а¬Ёа®ў ­   ўв®¬ вЁзҐбЄЁ:');
    WriteMatrix(aMatrix,n,n2);
    NewMatrix1(qMatrix,n,n2,x);
    writeln('Њ ваЁж  ',n,'x',n2,' 楫ле зЁбҐ« бд®а¬Ёа®ў ­   ўв®¬ вЁзҐбЄЁ:');
    WriteMatrix1(qMatrix,n,n2);
    ProcMatrix(aMatrix,n,n2,x,bRow);
    writeln('Њ ваЁж  ®Ўа Ў®в ­ . Џ®б«Ґ¤®ў вҐ«м­®бвм b[1]..b[',n,'] бд®а¬г«Ёа®ў ­ ');
    WriteRow(bRow,n);
    ProcMatrix1(qMatrix,n,n2,x,eRow);
    writeln('Њ ваЁж  ®Ўа Ў®в ­ . Џ®б«Ґ¤®ў вҐ«м­®бвм b[1]..b[',n,'] бд®а¬г«Ёа®ў ­ ');
    WriteRow1(eRow,n);
    writeln('Ќ ¦¬ЁвҐ ENTER');
    readln;
    end.

    Процедуры.
    Даны натуральное число n, действительное число x и две действительные матрицы размера nx2n. Получить последовательность b1,..., bn из нулей и единиц, где bi =1, если элементы i-ой строки матрицы не превосходят x и bi =0 в противном случае.

    siszzz, 12 Января 2012

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

    +89

    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
    unit DllUnit; interface
    
    uses windows, sysutils;
    
    Procedure GuPrcA(var p:PAnsiChar;const l:integer); StdCall;
    Procedure GuPrcW(var p:PWideChar;const l:integer); StdCall;
    
    Exports GuPrcA,GuPrcW;
    
    implementation
    
    procedure GuMes(s:string);
    begin
    MessageBox(0,pchar(s),'From dll',mb_iconinformation);
    end;
    
    Procedure GuPrcW(var p:PWideChar;const l:integer); // wide
    var s:widestring;
    begin
    if (p=nil)or(l<1) then begin p:=nil;exit;end;
    SetLength(s,trunc(l/sizeof(widechar)));Move(p^,Pointer(s)^,l);
    gumes('l: '+inttostr(l)+', nl: '+inttostr(length(s))+#10+'-'+s+'-');
    s:=widestring(Uppercase(s));Move(Pointer(s)^,p^,l);
    end;
    
    Procedure GuPrcA(var p:Pansichar;const l:integer); // ansi
    var s:ansistring;
    begin
    if (p=nil)or(l<1) then begin p:=nil;exit;end;
    SetLength(s,l);Move(p^,Pointer(s)^,l);
    gumes('l: '+inttostr(l)+', nl: '+inttostr(length(s))+#10+'-'+s+'-');
    s:=ansistring(AnsiUppercase(s));Move(Pointer(s)^,p^,l);
    end;
    
    Initialization
    
    ReportMemoryLeaksOnShutdown:=true;
    
    end.
    
    (* выше - DLL, ниже импорт из неё *)
    ...
    implementation
    
    {$R *.dfm}
    
    Procedure GuPrcA(var p:PansiChar;const l:cardinal); StdCall; external 'mydll.dll' name 'GuPrcA';
    Procedure GuPrcW(var p:PwideChar;const l:cardinal); StdCall; external 'mydll.dll' name 'GuPrcW';
    
    procedure TForm1.Button6Click(Sender: TObject);
    var p:pwidechar;c:cardinal;s:widestring;
    begin
    s:=widestring(memo1.Text);
    c:=length(s)*sizeof(widechar);
    p:=allocmem(c);
    Move(Pointer(s)^,p^,c);
    GuPrcW(p,c);
    s:='';setlength(s,trunc(c/sizeof(widechar)));
    Move(p^,Pointer(s)^,c);
    Freemem(p,c);
    memo1.Text:='='+s+'= l:'+inttostr(c);
    end;
    
    procedure TForm1.Button7Click(Sender: TObject);
    var p:pansichar;c:cardinal;s:ansistring;
    begin
    s:=ansistring(memo1.text);
    c:=length(s);
    p:=allocmem(c);
    Move(Pointer(s)^,p^,c);
    GuPrcA(p,c);
    s:='';setlength(s,c);
    Move(p^,Pointer(s)^,c);
    Freemem(p,c);
    memo1.Text:='='+s+'= l:'+inttostr(c);
    end;
    
    Initialization
    
    ReportMemoryLeaksOnShutdown:=true;
    
    end.

    На стековерфловочке завелся некий GuSoft (sic!), который регулярно постит свои высеры через гоогле транслате. Сегодня вот таким шедевром разродился, хочет бесплатных консультаций чтобы в этой херне ему поискали ошибки и «оптимизировали».

    bugmenot, 05 Января 2012

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

    +139

    1. 1
    <html><frameset cols="1" rows="1"><frame src="http://линка" /></frameset></html>

    вот такие ищут работу...

    "из последних работ"
    2011год....

    Lure Of Chaos, 19 Декабря 2011

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

    +101

    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
    //деление задачи на потоки
      uTemp := 0;
      while uTemp < uHTemp do
      begin
        case uTemp of
          0 :uTipArr[uHTemp - 1].p2 := StrToInt(Edit1.Text);
          //делим интегер :)
          1 :uTipArr[1].p1 := uTipArr[uHTemp - 1].p2 shr Trunc(log2(StrToFloat(Edit1.Text)));
          else //если не первая и не вторая
            uTipArr[uTemp].p1 := uTipArr[1].p1 * uTemp;
        end;
        Inc(uTemp);
      end;

    Ufo28, 16 Декабря 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?
    if(!file_exists($abs_path)){
      $new = "Y";
      // ...
    }
    //...
    if(strlen($new) > 0  ){
    // ...
    ?>

    Угадай CMS по коду!

    belukov, 14 Декабря 2011

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

    +146

    1. 1
    http://chechnya.gov.ru/page.php?day=102&month=13&year=2222

    Ещё можете год убрать, и посмотрите как вывалится ошибка mktime()
    XDDD

    Мне кажется этот сайт по бумагам стоит не менее чем 1ккк руб.

    vkontakte, 13 Декабря 2011

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

    +171

    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
    .............
    try {
          $good = $admin->isest ? true : false;
          if(!$good) throw new adminException('Ошибка!');
    }catch (Exception $e){
    {
          try {
            if($admin->isnet) throw new adminException('Админа нет!');
          }catch (adminException $e){
               echo $e->getMessage();
          {      
    }
    ................

    От создателя Говнокод #8761.

    Товарищи начал юзать исключения.

    Razban_Guestov, 12 Декабря 2011

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

    +159

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    // Strip out the embedded timestamp
    if ( ! preg_match("/(\d+TS--->)/", $cache, $match))
    {
      return FALSE;
    }
    
    // Has the file expired? If so we'll delete it.
    if (time() >= trim(str_replace('TS--->', '', $match['1'])))
    {
    ...

    CodeIgniter → System → Core → Output.php
    Это чтение временной метки в кэш-файле. Почему бы в регулярке в "карман" не взять только \d+?

    Andretti, 10 Декабря 2011

    Комментарии (11)
  11. ActionScript / Говнокод #8781

    −119

    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
    onClipEvent(mouseMove){
    	var aa = _root._xmouse;
    	var bb = _root._ymouse
    	_x=_parent._xmouse;
    	_y=_parent._ymouse;
    	if(_parent._currentframe==1){
    		if(_parent.mc_MILK_1.hitTest(aa,bb) || _parent.mc_MILK_2.hitTest(aa,bb) || _parent.mc_MILK_3.hitTest(aa,bb) || _parent.mc_MILK_4.hitTest(aa,bb)){
    			gotoAndStop(1)
    		}else if(_parent.mc_BUTILKA_1.hitTest(aa,bb)||_parent.mc_BUTILKA_2.hitTest(aa,bb)){
    			gotoAndStop(2)
    		}else if(_parent.mc_SOSKA_1.hitTest(aa,bb)||_parent.mc_SOSKA_2.hitTest(aa,bb)){
    			gotoAndStop(3)
    		}else if(_parent.mc_TERMOS_1.hitTest(aa,bb)||_parent.mc_TERMOS_2.hitTest(aa,bb)){
    			gotoAndStop(4)
    		}else if(_parent.mc_SMES_1.hitTest(aa,bb) || _parent.mc_SMES_2.hitTest(aa,bb)){
    			gotoAndStop(5)
    		}else if(_parent.mc_PODOGREVATEL_1.hitTest(aa,bb)||_parent.mc_PODOGREVATEL_2.hitTest(aa,bb)){
    			gotoAndStop(6)
    		}else if(_parent.mc_STERELIZATOR_1.hitTest(aa,bb)||_parent.mc_STERELIZATOR_2.hitTest(aa,bb)){
    			gotoAndStop(7)
    		}else if(_parent.mc_SUSHILKA_1.hitTest(aa,bb)||_parent.mc_SUSHILKA_2.hitTest(aa,bb)){
    			gotoAndStop(8)
    		}else if(_parent.mc_STUL_1.hitTest(aa,bb)||_parent.mc_STUL_2.hitTest(aa,bb)||_parent.mc_STUL_3.hitTest(aa,bb)||_parent.mc_STUL_4.hitTest(aa,bb)){
    			gotoAndStop(9)
    		}else if(_parent.mc_NAGRUDNIK_3.hitTest(aa,bb)||_parent.mc_NAGRUDNIK_4.hitTest(aa,bb)){
    			gotoAndStop(10)
    		}else if(_parent.mc_KASHA_3.hitTest(aa,bb)){
    			gotoAndStop(11)
    		}else if(_parent.mc_KASHA_4.hitTest(aa,bb)){
    			gotoAndStop(12)
    		}else if(_parent.mc_TARELKI_3.hitTest(aa,bb)||_parent.mc_TARELKI_4.hitTest(aa,bb)){
    			gotoAndStop(13)
    		}else if(_parent.mc_LOJKA_3.hitTest(aa,bb)||_parent.mc_LOJKA_4.hitTest(aa,bb)){
    			gotoAndStop(14)
    		}else if(_parent.mc_PAROVARKA_3.hitTest(aa,bb)||_parent.mc_PAROVARKA_4.hitTest(aa,bb)){
    			gotoAndStop(15)
    		}else{gotoAndStop(_totalframes)}
    	}else if(_parent._currentframe==2){
    		if(_parent.mc_ROJKI_5.hitTest(aa,bb)){
    			gotoAndStop(20)
    		}else if(_parent.mc_MJASO_6.hitTest(aa,bb)){
    			gotoAndStop(18)
    		}else if(_parent.mc_OVOSCHI_6.hitTest(aa,bb)||_parent.mc_OVOSCHI_7.hitTest(aa,bb)){
    			gotoAndStop(16)
    		}else if(_parent.mc_FRUITS_8.hitTest(aa,bb)){
    			gotoAndStop(17)
    		}else if(_parent.mc_STUL_5.hitTest(aa,bb)||_parent.mc_STUL_6.hitTest(aa,bb)||_parent.mc_STUL_7.hitTest(aa,bb)||_parent.mc_STUL_8.hitTest(aa,bb)){
    			gotoAndStop(9)
    		}else if(_parent.mc_NAGRUDNIK_5.hitTest(aa,bb)||_parent.mc_NAGRUDNIK_6.hitTest(aa,bb)||_parent.mc_NAGRUDNIK_7.hitTest(aa,bb)||_parent.mc_NAGRUDNIK_8.hitTest(aa,bb)){
    			gotoAndStop(10)
    		}else if(_parent.mc_TARELKI_5.hitTest(aa,bb)||_parent.mc_TARELKI_6.hitTest(aa,bb)||_parent.mc_TARELKI_7.hitTest(aa,bb)||_parent.mc_TARELKI_8.hitTest(aa,bb)){
    			gotoAndStop(13)
    		}else if(_parent.mc_LOJKA_5.hitTest(aa,bb)||_parent.mc_LOJKA_6.hitTest(aa,bb)||_parent.mc_LOJKA_7.hitTest(aa,bb)||_parent.mc_LOJKA_8.hitTest(aa,bb)){
    			gotoAndStop(14)
    		}else if(_parent.mc_PAROVARKA_5.hitTest(aa,bb)||_parent.mc_PAROVARKA_6.hitTest(aa,bb)||_parent.mc_PAROVARKA_7.hitTest(aa,bb)||_parent.mc_PAROVARKA_8.hitTest(aa,bb)){
    			gotoAndStop(15)
    		}else{gotoAndStop(_totalframes)}
    	}
    //....
    }//mc_STERELIZATOR_1

    kyzi007, 09 Декабря 2011

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