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

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

    +151

    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
    procedure Load_flashDEF_setings;
    var
      Reg: TRegistry;
      RegKeyPath: string;
    begin
     Reg := TRegistry.Create;
     try
      with Reg do begin
       RootKey := HKEY_CURRENT_USER;
       RegKeyPath := 'Software\fuckinSoft';
       OpenKey(RegKeyPath, True);
       if ReadBool('Wipe_File')=false then begin Main.frmMain.CBx_wipe_file.Checked:=false;
       end
       else
       if ReadBool('Wipe_File')=true then begin Main.frmMain.CBx_wipe_file.Checked:=true;
       end
       else
       if ReadBool('Def_Module')=false then begin Main.frmMain.CBx_defence_module.Checked:=false;
       end
       else
       if ReadBool('Def_Module')=true then begin Main.frmMain.CBx_defence_module.Checked:=true;
       end
      end
     finally
      Reg.CloseKey;
      Reg.Free;
     end;
    end;
     
    procedure Save_flashDEF_setings;
    var
      Reg: TRegistry;
      RegKeyPath: string;
    begin
     Reg := TRegistry.Create;
     try
      with Reg do begin
       RootKey := HKEY_CURRENT_USER;
       RegKeyPath := 'Software\fuckinSoft';
       OpenKey(RegKeyPath, True);
       if Main.frmMain.CBx_wipe_file.Checked=true then begin WriteBool('Wipe_File', true);
       end
       else
       if Main.frmMain.CBx_wipe_file.Checked=false then begin WriteBool('Wipe_File', false);
       end
       else
       if Main.frmMain.CBx_defence_module.Checked=true then begin WriteBool('Def_Module', true);
       end
       else
       if Main.frmMain.CBx_defence_module.Checked=false then begin WriteBool('Def_Module', false);
       end
      end
     finally
      Reg.CloseKey;
      Reg.Free;
     end;
    end;

    Ифы хороши в меру =\

    guest, 23 Апреля 2009

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

    +150

    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
    function ConditionsToNum(cn) {
    	switch (cn) {
    		case "По окладу": return (0);
    		case "Почасовая": return (1);
    	}
    }
    
    function NumToConditions(cn) {
    	switch (parseInt(cn)) {
    		case 0: return ("По окладу");
    		case 1: return ("Почасовая");
    	}
    }

    guest, 23 Апреля 2009

    Комментарии (1)
  4. Python / Говнокод #917

    −102

    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
    class Node:
        def __init__(self):
    	self.id    = 0
    	self.d     = None
    	self.left  = None
    	self.right = None
        def __del__(self):
    	del self
    
    class Struct:
        def __init__(self):
    	self.data  = None
    
        def add(self,data):
    	if self.data == None:
    	    self.data		 = Node()
    	    self.data.d		 = data
    	    self.data.right	 = Struct()
    	else:
    	    if self.data.d       == data:
    		return 0
    	    elif self.data.d     != data:
    		return self.data.right.add(data)
        
        def next(self):
            if self.data != None:
    	    print self.data.d 
        	    return self.data.right.next()

    как правильно сделать чтобы при вызове next возвращалось значение не в print а в return и при рекурсия выполнялась

    guest, 22 Апреля 2009

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

    +144

    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
    switch($_POST['find'])
    	{
    		case 'a' :
    			echo '<p> Регулярный клиент.</p>';
    			break;
    		case 'b' :
    			echo '<p> Клиент, обратившийся после телефизионной рекламы.</p>';
    			break;
    		case 'c' :
    			echo '<p> Клиент, обратившийся в результате нахаождения информации в телефонном справочнике.</p>';
    			break;
    		case 'd' :
    			echo '<p> Клиент, обратившийся в результате чьей-то устной рекомендации.</p>';
    			break;
    		default :
    			echo '<p> Вы унылое говно</p>';
    			break;
    	}

    guest, 22 Апреля 2009

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

    +175.9

    1. 1
    #define JUST_ANOTHER_MAGIC_NUMBER 4398476903476060

    магия чисел

    guest, 21 Апреля 2009

    Комментарии (1)
  7. VisualBasic / Говнокод #910

    −130

    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
    i = 2
    
                    X = "blank"
                    index = ""
                    qty = "1"
    
                    For Each Z In sContents
                        If (Z.StartsWith("1") Or Z.StartsWith("2") Or Z.StartsWith("3") Or Z.StartsWith("4") Or Z.StartsWith("5") Or Z.StartsWith("6") Or Z.StartsWith("7") Or Z.StartsWith("8") Or Z.StartsWith("9")) Then
                            Line = Z.Split("|")
    
                            If Not Line(0).Contains(".") Then
                                index = Line(0)
                                qty = 1
                            End If
    
                            If Line(1).StartsWith("ID") Then
                                X = Line(3).Substring(15)
                                qty = Line(4)
                            Else
                                sheet.Cells(i, 1) = Line(2)
                                sheet.Cells(i, 2) = Line(3)
    
                                If Line(2) = X Then
                                    sheet.Range("B" & i).Font.Bold = True
                                Else
                                    If Line(0).StartsWith(index & ".") Then
                                        sheet.Range("B" & i).IndentLevel() = 1
                                    End If
                                End If
    
                                If Not Line(0).Contains(".") Then
                                    sheet.Range("B" & i).Font.Bold = True
                                End If
    
                                If Line(5) = "N/A" Then
                                    sheet.Cells(i, 3) = 0
                                Else
                                    sheet.Cells(i, 3) = Line(5)
                                End If
    
                                sheet.Range("C" & i).NumberFormat = "[$$-2409]#,##0.00"
    
                                sheet.Cells(i, 4) = Line(7)
    
                                If qty > 1 Then
                                    sheet.Cells(i, 5) = Line(4) * qty
                                Else
                                    sheet.Cells(i, 5) = Line(4)
                                End If
    
                                sheet.Cells(i, 6) = "=E" & i & "*C" & i
    
                                sheet.Range("F" & i).NumberFormat = "[$$-2409]#,##0.00"
    
                                sheet.Range("D" & i, "E" & i).HorizontalAlignment = Excel.Constants.xlCenter
                                sheet.Range("A" & i, "F" & i).Font.Size = 10
                                sheet.Range("A" & i, "F" & i).Borders.LineStyle = Excel.Constants.xlSolid
    
                                i = i + 1
                            End If
                        End If
    
                    Next Z

    чем не говнокод?
    работает, хуле :)

    guest, 21 Апреля 2009

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

    +151

    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
    <?php
    class A {
    	function __get($prop) {
    		var_dump($prop);
    		$this->$prop = '123';
    		return null;
    	}
    }
    
    $a = new A;
    $prop = '01.01.01';
    $a->$prop;
    var_dump($a);

    guest, 20 Апреля 2009

    Комментарии (1)
  9. Perl / Говнокод #894

    −153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    sub get_user_xml {
        
        # много не существенного кода
        
        return $self->get_xml($self);
    
        return 0;
    }

    Двойной

    guest, 17 Апреля 2009

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    function quit($msg, $output = true){
    		if($output) die($msg);
    		return false;
    	}

    Не выдумка. Нашли в реальном проекте

    guest, 16 Апреля 2009

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

    +152

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    procedure TfmEditAddDet.ControlExit(Sender: TObject);
    begin
      if Sender Is TEdit then TRIM(TEdit(Sender).Text)
        else if Sender Is TMemo then TRIM(TEdit(Sender).Text);
    end;

    Попытка вызова TRIM как процедуру.

    guest, 16 Апреля 2009

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