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

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

    +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
    public Boolean UnderMonitoring
            {
                get
                {
                    checkUpdateMonitoring(ContractID);
                    DataTable t0 = HespaWebServices.DynamicServices.SQLTable("CONTRACT", "CONTRACT", "ID=" + ContractID,
                                                                             "ID");
                    if (t0.Rows.Count == 1)
                        return Core.RowBoolean(t0.Rows[0], "UNDER_MONITORING");
                    else
                        return false;
                }
            }

    В свойствах обосрать всю бизнес логику, такое надо уметь

    __NoBody__, 31 Мая 2012

    Комментарии (3)
  3. Java / Говнокод #10072

    +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
    public static String converterMsToTimeString(Long msecond){
    		String result="";
    		if (msecond!=0){
    			long hours =  msecond /(1000*60*60);
    			long minuts =  (msecond % (1000*60*60))/(1000*60);
    			long seconds =  ((msecond % (1000*60*60)) %(1000*60)) / 1000;
    			result = (hours < 10 ? "0" + String.valueOf(hours) : String.valueOf(hours)) + ":" 
    					+ (minuts < 10 ? "0" + String.valueOf(minuts) : String.valueOf(minuts)) + ":"
    						+ (seconds < 10 ? "0" + String.valueOf(seconds) : String.valueOf(seconds));
    			
    		}
    		result=""; // not many
    		return result;
    	}

    Вставлено как есть. Смысл комента ускользает...

    alexcom, 28 Апреля 2012

    Комментарии (21)
  4. 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)
  5. Java / Говнокод #8799

    +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
    private enum FolderType{inbound, outbound, archive, rejected}
    
    private String inboundName = "inbound";
    private String outboundName = "outbound";
    private String archiveName = "archive";
    private String rejectedName = "rejected";
    
    // чуть ниже....
    private String getFolderTypeName(FolderType type){
        switch (type){
            case inbound:
                return inboundName;
            case outbound:
                return outboundName;
            case archive:
                return archiveName;
            case rejected:
                return rejectedName;
            default:
                throw new IllegalArgumentException(type.toString());
        }
    }

    Похоже, кто-то так и не въехал в жабьи енумы.

    roman-kashitsyn, 12 Декабря 2011

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

    +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
    program index;
    uses crt;
    const y=20;
    var a:array[1..y]of Integer;
        i,
        j,
        x,
        Found:Integer;
    begin
      clrscr;
      Found:=0;
      for i:=1 to y do
      begin
        WriteLn('Vvedite ',i,'- and element massiva');
        ReadLn(a[i]);
      end;
      Write('Vvedite X=');
      ReadLn(x);
      for i:=1 to y do
        for j:=i+1 to y do
        begin
          if (x=(Sqr(a[i])+Sqr(a[j]))) then
          begin
            Found:=Found+1;
            WriteLn('a=',a[i],' b=',a[j]);
          end;
        end;
      if Found=0 then
            WriteLn('Takih chisel net');
      ReadLn;
    end.

    одномерный числовой масив

    ITdocer, 23 Октября 2011

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

    +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
    Query q;
          //для хэширования
    
          q =
             session.createQuery("select idElType from " + LinkToAtributeValue.class.getName()
             + " where idEl=" + idObject.toString());
    
          Vector<Integer> vec = new Vector<Integer>(q.list());
          int t;
          for(int i = 0; i < vec.size() - 1; i++) {
             t = vec.get(i);
             for(int j = i + 1; j < vec.size(); j++) {
                if(t == vec.get(j)) {
                   vec.remove(j);
                }
             }
          }

    "DISTINCT для трусов"
    или
    "Хорошего кода должно быть много"

    maxt, 08 Сентября 2011

    Комментарии (4)
  8. Java / Говнокод #7771

    +84

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    List<SomeClass> someClassList = new ArrayList<SomeClass>();
    <...>
    int i = 0;
    for (SomeClass someClassVariable: someClassList) {
        doSomething(someClassList().get(i).getText(), someClassList().get(i).getId);
        ++i;
    }

    Art, 05 Сентября 2011

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

    +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
    search = 0;
    try {
    	search = search + wdContext.currentSearchElement().getLifnr().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getBahns().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getINN().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getKPP().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getKtokk().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getLand1().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getBanks().length();
    } catch (Exception e) {
    	// TODO: handle exception
    }
    try {
    	search = search + wdContext.currentSearchElement().getBankl().length();
    } catch (Exception ex) {
    	// TODO: handle exception
    }
    try {
    	search = search + wdContext.currentSearchElement().getBankn().length();
    } catch (Exception ex) {
    //	TODO: handle exception
    }
    try {
    	search = search + wdContext.currentSearchElement().getLocco().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	//	search = search + wdContext.currentSearchElement().getLoevm().length();
    	search = search + wdContext.currentSearchElement().getName().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getOKPO().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getOrt01().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    try {
    	search = search + wdContext.currentSearchElement().getSortl().length();
    } catch (Exception ex) {
    //	ex.printStackTrace();
    }
    if (search == 0)
    	wdComponentAPI.getMessageManager().reportException("Введите критерии поиска", true);
    else {
    	//Далее идет поиск
    }

    Вот такой вот была забабахана проверка входных параметров перед вызовом функции поиска (мною добавлен только последний комментарий, все остальное оригинальное)

    foGa, 11 Августа 2011

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

    +84

    1. 1
    2. 2
    double speed = ....;
    this.speed = new Double(speed).floatValue();

    Оригинальный способ преобразования double в float.

    lucidfox, 05 Июля 2011

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

    +84

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if(obj instanceof TreeDictEntry) {
             TreeDictEntry tde = (TreeDictEntry) obj;
             Integer index = hm_IdDocs_idVectors.get(tde.getId());
             if(index == null) {
                Exception ex =
                   new Exception("Epic Faile в хэш мапе элементов не найден индекс в векторе");
                ex.printStackTrace();
             }
             vecElements.removeElementAt(index);
             return;
          }

    к этому я даже название придумал: "Эпичный говнокод"

    maxt, 08 Июня 2011

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