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

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

    +81

    1. 1
    2. 2
    3. 3
    if (uf.getPath().contains("d:/test.java/uploads/")) {
       uf.setPath(uf.getPath().replace("d:/test.java/uploads/", this.uploadPath));
    }

    хуита, 29 Июля 2012

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

    +81

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    int i=0;
            for (;i<5;
                 printf("%d",i);
                 i++;
                 );

    ZevsVU, 17 Июля 2012

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

    +81

    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
    <?php
     
    function md5_decrypt($enc_text, $password='code', $iv_len = 16){
    	$enc_text = base64_decode($enc_text);
    	 $n = strlen($enc_text);
    	 $i = $iv_len;
    	 $plain_text = '';
    	 $iv = substr($password ^ substr($enc_text, 0, $iv_len), 0, 512);
    	  while ($i < $n) {
    	  	$block = substr($enc_text, $i, 16);
    	  	$plain_text .= $block ^ pack('H*', md5($iv));
    	  	$iv = substr($block . $iv, 0, 512) ^ $password;
    	  	$i += 16;
    	  }
    	  return preg_replace('/\\x13\\x00*$/', '', $plain_text);
    }
    
    ?>

    Название ф-ции говорит само за себя...

    killro0000, 14 Мая 2012

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

    +81

    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
    <?php  
    
        $a = explode(" ",'Строка с пробелами');  
       
        $vol = '';
    		 
        for($i=0; $i<count($a); $i++) { 
    	
            $vol .= $a[$i]; 
    			 
        } 
    
    	echo $vol;
    
    ?>

    Шоколадный шедевр убирания пробелов из строки...

    Ни знаний .*_replace, ни, даже, implode, в данном случае...

    killro0000, 01 Мая 2012

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

    +81

    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
    96. 96
    97. 97
    98. 98
    99. 99
    type
      TString=string[20];
      TInputRec=record      //Inputable record type - тип вводимой информации
              FCol: TString;  //первый, второй, третий столбец
              SCol: TString;
              TCol: TString;
                end;
      TInputRecArray=array [1..127]of TInputRec;
    <...>
    procedure InFile (var n0,k0:byte);       //процедура формирования файлов
    Var
        InRec0   :TInputRec;
        BufChar  :char;
        BufString:TString;
        C,CharCheck,DigitCheck,DelBool,IncorBool:Boolean;
      begin
        n0:=0;
        repeat
          InRec0.FCol:='';
          InRec0.SCol:='';
          InRec0.TCol:='';
          BufString:='';
          IncorBool:=true;
          DelBool:=false;
          Inc(n0);
          Writeln(n0:20);
          while IncorBool do
          begin
          repeat
            BufChar:=readkey;
            StringDel(DelBool);
            ExitCond(k0,C,CharCheck,DigitCheck,BufChar);
            If C then Break;
            If CharCheck then
              begin
                write(bufchar);
                BufString:=BufString+BufChar;
              end;
            if DelBool then BufString:='';
            DelBool:=false;
          until BufChar=' ';
          If C then Break;
          InRec0.FCol:=Trim(BufString);
          BreakProc(n0,IncorBool,InRec0.FCol);
          end;
          Writeln;
          BufString:='';
          IncorBool:=true;
          if (k0=1) or (k0=2) then Break;
          while IncorBool do
          begin
          repeat
            BufChar:=readkey;
            StringDel(DelBool);
            ExitCond(k0,C,CharCheck,DigitCheck,BufChar);
            If C then Break;
            If DigitCheck or (BufChar='-') or (BufChar='/') or (BufChar='.') then
              begin
                Write(bufchar);
                BufString:=BufString+BufChar;
              end;
          if DelBool then BufString:='';
          DelBool:=false;
          until BufChar=' ';
          If C then Break;
          InRec0.SCol:=Trim(BufString);
          BreakProc(n0,IncorBool,InRec0.SCol);
          end;
          Writeln;
          BufString:='';
          DelBool:=false;
          IncorBool:=true;
          while IncorBool do
          begin
          repeat
            BufChar:=readkey;
            StringDel(DelBool);
            ExitCond(k0,C,CharCheck,DigitCheck,BufChar);
            If C then Break;
            If DigitCheck or (BufChar='-') or (BufChar='/') or (BufChar='.') then
              begin
                Write(bufchar);
                BufString:=BufString+BufChar;
              end;
          if DelBool then BufString:='';
          DelBool:=false;
          until BufChar=' ';
          If C then Break;
          InRec0.TCol:=Trim(BufString);
          BreakProc(n0,IncorBool,InRec0.TCol);
          end;
          Writeln;
          BufString:='';
          DelBool:=false;
          IncorBool:=true;
          InputRecArray[n0]:=InRec0;
        until False;
        ClrScr;
      end;

    Одна из ужасных моих программ (сдал и забыл как страшный сон (задача на первом курсе была сформировать 2 файла)). Тогда даже не знал про оператор continue...

    Psilon, 23 Марта 2012

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

    +81

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public void getApplicationContext(ApplicationContext applicationContext ) {
        applicationContext.setUserId(currentUserService.getCurrentUser().getName());
        applicationContext.setTransactionType(transactionType);
        applicationContext.setApplication(applicationName);
        applicationContext.setSubSystem(subSystemName);
        applicationContext.setAddress(ipAddress);
        applicationContext.setCorrelationId(correlationIDGenerator.getRandomGUID());
    }

    *facepalm*

    roman-kashitsyn, 12 Января 2012

    Комментарии (8)
  8. Pascal / Говнокод #9072

    +81

    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
    { ... }
      writeln('vvedite indexi "X" i "=" 1-ogo uravneniay');
      writeln('x1');
      readln(x11);
      writeln('x2');
      readln(x12);
      writeln('x3');
      readln(x13);
      writeln('x4');
      readln(x14);
      writeln('=');
      readln(x15);
      writeln('vvedite indexi "X" i "=" 2-ogo uravneniay');
      writeln('x1');
      readln(x21);
      writeln('x2');
      readln(x22);
      writeln('x3');
      readln(x23);
      writeln('x4');
      readln(x24);
      writeln('=');
      readln(x25);
      writeln('vvedite indexi "X" i "=" 3-ogo uravneniay');
      writeln('x1');
      readln(x31);
      writeln('x2');
      readln(x32);
      writeln('x3');
      readln(x33);
      writeln('x4');
      readln(x34);
      writeln('=');
      readln(x35);
      writeln('vvedite indexi "X" i "=" 4-ogo uravneniay');
      writeln('x1');
      readln(x41);
      writeln('x2');
      readln(x42);
      writeln('x3');
      readln(x43);
      writeln('x4');
      readln(x44);
      writeln('=');
      readln(x45);
      {веселье - вот зачем это все нужно было))}
      m2[1,1]:=x11;
      m2[1,2]:=x12;
      m2[1,3]:=x13;
      m2[1,4]:=x14;
      m2[2,1]:=x21;
      m2[2,2]:=x22;
      m2[2,3]:=x23;
      m2[2,4]:=x24;
      m2[3,1]:=x31;
      m2[3,2]:=x32;
      m2[3,3]:=x33;
      m2[3,4]:=x34;
      m2[4,1]:=x41;
      m2[4,2]:=x42;
      m2[4,3]:=x43;
      m2[4,4]:=x44;
    { ... }

    Классика ввода матриц. Опять. С киберфорума. http://www.cyberforum.ru/turbo-pascal/thread425906.html#post2374414

    HighPredator, 10 Января 2012

    Комментарии (10)
  9. Java / Говнокод #8610

    +81

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Date date = (Date)value.getParam("DocReceiptDate");
        if (date.getHours() == 24) {
          date.setHours(0);
        }
        String documentReceiptDate = (new SimpleDateFormat("dd.MM.yyyy.kk.mm")).format(date);

    Элегантная попытка форматирования даты.
    Задача было вместо 24 часов писать 00, например не "24.11.2011.24.23", а "24.11.2011.00.23".
    Как все уже догадались, следовало просто использовать формат "dd.MM.yyyy.HH.mm".

    LexeY4eg, 23 Ноября 2011

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

    +81

    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
    if(strlength==1){str1}
    if(strlength==2{str1,str2}
    
    
    if(str2.isEmpty()){String str2=str.replaceAll(r1, r1_);
    
    String str6=str5.replaceAll(r5, r5_);
    	String str7=str6.replaceAll(r6, r6_);
    	String str8=str7.replaceAll(r7, r7_);
    	String str9=str8.replaceAll(r8, r8_);
    	String str10=str9.replaceAll(r9, r9_);
    	String str11=str10.replaceAll(r10, r10_);
    	String str12=str11.replaceAll(r11, r11_);
    	String str13=str12.replaceAll(r12, r12_);
    	String str15=str13.replaceAll(r14, r14_);
    	String str16=str15.replaceAll(r15, r15_);
    	String str17=str16.replaceAll(r16, r16_);
    	String str18=str17.replaceAll(r17, r17_);
    	String str19=str18.replaceAll(r18, r18_);
    	String str20=str19.replaceAll(r19, r19_);
    	String str21=str20.replaceAll(r20, r20_);
    	String str22=str21.replaceAll(r21, r21_);
    	String str23=str22.replaceAll(r22, r22_);
    	String str24=str23.replaceAll(r23, r23_);
    	String str25=str24.replaceAll(r24, r24_);
    	String str26=str25.replaceAll(r25, r25_);
    	String str27=str26.replaceAll(r26, r26_);
    	String str28=str27.replaceAll(r27, r27_);
    	String str29=str28.replaceAll(r28, r28_);
    	String str30=str29.replaceAll(r29, r29_);
    	String str31=str30.replaceAll(r30, r30_);
    	String str32=str31.replaceAll(r31, r31_);
    	String str33=str32.replaceAll(r32, r32_);
    	String str34=str33.replaceAll(r33, r33_);
    	String str35=str34.replaceAll(r34, r34_);
    	String str36=str35.replaceAll(r35, r35_);
    	String str37=str36.replaceAll(r36, r36_);
    	String str38=str37.replaceAll(r37, r37_);
    	String str39=str38.replaceAll(r38, r38_);
    	String str40=str39;
    	String str41=str40.replaceAll(r40, r40_);
    	String str42=str41;
    	String str43=str42.replaceAll(r42, r42_);
    	String str44=str43;
    	String str45=str44.replaceAll(r44, r44_);
    	String str46=str45.replaceAll(r45, r45_);
    	String str47=str46;
    	String str48=str47.replaceAll(r47, r47_);
    	String str49=str48.replaceAll(r48, r48_);
    	String str50=str49.replaceAll(r49, r49_);

    FanAs45809, 10 Октября 2011

    Комментарии (22)
  11. Java / Говнокод #8004

    +81

    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
    /*
     * Copyright 2009 Sun Microsystems, Inc.
     * All rights reserved.  You may not modify, use,
     * reproduce, or distribute this software except in
     * compliance with  the terms of the License at:
     * http://developer.sun.com/berkeley_license.html
     */
    
    
    package cart.util;
    
    public class IdVerifier {
        public IdVerifier() {
        }
    
        public boolean validate(String id) {
            boolean result = true;
    
            for (int i = 0; i < id.length(); i++) {
                if (Character.isDigit(id.charAt(i)) == false) {
                    result = false;
                }
            }
    
            return result;
        }
    }

    Java EE tutorial

    ingenuus, 27 Сентября 2011

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