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

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

    −154

    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
    Лично я 1С не люблю. И вообще лучше не говорить об этом, настроение портится...
    Цикл ВЦикле Открывающая_Скобка От Ноль до Двадцать_Один Закрывающая_Скобка
    Начало_цикла
    Печать Кавычка Один С - Обратный_Слеш Кавычка Говно Обратный_Слеш Кавычка Кавычка Точка_С_Запятой
    Конец_цикла
    
    Конечно это фантазия, но представьте что случилос бы, если бы 1С писали люди, \
     которые не смогли осилить не только английский язык, но и цифры и знаки пунктуации.
    К тому же бухгалтерия предлагает отвратительнейшие задачи, которые предлагается решать на отвратительнейшем языке.
    Бюрократический ад пишется на бюрократическом языке. Зачем английский язык, если есть русский?
    Помоему это какая-то особая программа по порабощению русского народа. Русские дети хотели стать космонавтами,\
     а их осадили прямо в кресло с мерцающим монитором и программой такой бюрократически-желтой иконкой.
    Боже упаси вас от продукции этой компании!

    alexoy, 01 Октября 2011

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

    +142

    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
    double[] КосинусФПриВходе = {1,0.99939,0.997564,0.994521,0.990268,0.9848,0.97814,0.97029,0.961261,0.9510565,0.93969,0.927183,0.913545,0.898794,0.88294,
                                         0.866025,0.848048,0.8290375,0.809016,0.78801,0.76604,0.74314,0.71933,0.69465,0.66913,0.64278,0.61566,0.58778,0.55919,0.5,
                                         0.46947,0.43837,0.40673,0.3746,0.34202,0.309016,0.27563,0.24192,0.20791,0.17364,0.13917,0.104528,0.06975,0.034899,0,-0.03489,
                                         -0.06975,-0.104528,-0.13917,-0.17364,-0.20791,-0.24192,-0.27563,-0.309016,-0.34202,-0.3746,-0.40673,-0.43837,-0.46947,-0.5,
                                         -0.55919,-0.58778,-0.61566,-0.64278,-0.66913,-0.69465,-0.71933,-0.74314,-0.76604,-0.78801,-0.809016,-0.8290375,-0.848048,
                                         -0.866025,-0.88294,-0.898794,-0.913545,-0.927183,-0.93969,-0.9510565,-0.961261,-0.97029,-0.97814,-0.9848,-0.990268,-0.994521,
                                         -0.997564,-0.99939,-1,-0.99939,-0.997564,-0.994521,-0.990268,-0.9848,-0.97814,-0.97029,-0.961261,-0.9510565,-0.93969,-0.927183,
                                         -0.913545,-0.898794,-0.88294,-0.866025,-0.848048,-0.8290375,-0.809016,-0.78801,-0.76604,-0.74314,-0.71933,-0.69465,-0.66913,
                                         -0.64278,-0.61566,-0.58778,-0.55919,-0.5,-0.46947,-0.43837,-0.40673,-0.3746,-0.34202,-0.309016,-0.27563,-0.24192,-0.20791,
                                         -0.17364,-0.13917,-0.104528,-0.06975,-0.034899,0,0.03489,0.06975,0.104528,0.13917,0.17364,0.20791,0.24192,0.27563,0.309016,
                                         0.34202,0.3746,0.40673,0.43837,0.46947,0.5,0.55919,0.58778,0.61566,0.64278,0.66913,0.69465,0.71933,0.74314,0.76604,0.78801,
                                         0.809016,0.8290375,0.848048,0.866025,0.88294,0.898794,0.913545,0.927183,0.93969,0.9510565,0.961261,0.97029,0.97814,0.9848,
                                         0.990268,0.994521,0.997564,0.99939};
      
            private void XbYb()
            {
                double x;
                x = AB * КосФ;
                Xb = (int)x;
                double f=4*Ya*Ya-4*(Xa*Xa+Ya*Ya+Xb*Xb-2*Xa*Xb-AB*AB);
                if (счетчик >= 0 && счетчик <= 89) Yb = (2 * Ya + (int)Math.Sqrt(f)) / 2;
                else Yb = (2 * Ya - (int)Math.Sqrt(f)) / 2;
            }
            
            private void timer1_Tick(object sender, EventArgs e)
            {
                if (счетчик == КосинусФПриВходе.Length) счетчик = 0;
                КосФ=КосинусФПриВходе[счетчик];
                XbYb();
                pictureBox1.Invalidate();
                счетчик++;
            }

    1C головного мозга

    psina-from-ua, 30 Сентября 2011

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

    +160

    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
    <div class="pmi_cont pr" style="width:60px;float: left; min-height: 20px;z-index: 5;"><?php $k = 0;?>
                <?php if ($uno_el['pr1']): ?>
                    <div class="price_1"
                         style="height:25px;"><?php echo $uno_el['pr1']; $k = 1; echo is_numeric($uno_el['pr1']) ? ' руб.'
                            : ''; ?></div><?php endif;?>
                <?php if ($uno_el['pr2']): ?>
                    <div class="price_2"
                         style="height:25px;"><?php echo $uno_el['pr2']; $k = 1; echo is_numeric($uno_el['pr2']) ? ' руб.'
                            : ''; ?></div><?php endif;?>
                <?php if ($uno_el['pr3']): ?>
                    <div class="price_3"
                         style="height:25px;"><?php echo $uno_el['pr3']; $k = 1; echo is_numeric($uno_el['pr3']) ? ' руб.'
                            : ''; ?></div><?php endif;?>
                <?php if ($uno_el['pr4']): ?>
                    <div class="price_4"
                         style="height:25px;"><?php echo $uno_el['pr4']; $k = 1; echo is_numeric($uno_el['pr4']) ? ' руб.'
                            : ''; ?></div><?php endif;?>
                <?php if ($uno_el['pr5']): ?>
                    <div class="price_5"
                         style="height:25px;"><?php echo $uno_el['pr5']; $k = 1; echo is_numeric($uno_el['pr5']) ? ' руб.'
                            : ''; ?></div><?php endif;?>
                <?php if ($k): ?>
                    <?php if ($uno_el['link']): ?>
                        <div style="margin-left: -60px; width: 200px;"><?php echo $uno_el['link'];?></div><?php endif; ?>
                    <?php else: ?>
                    <?php if ($uno_el['link']): ?>
                        <div style="position:relative;left: -80px; width: 140px;"><?php echo $uno_el['link'];?></div><?php endif; ?>
                    <?php endif;?>
            </div>

    Эта хуита выводит цену. И так все шаблоны. Разработчик - мудак.

    amazondev, 29 Сентября 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    public function &entityFactory() {
        $entityObject = new stdClass();
        return $entityObject;
    }

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

    Комментарии (22)
  6. Куча / Говнокод #7973

    +146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Как известно Страуструп для своей диссертации написал на языке Симула программу расчета данных.
    Причем программа была написана очень быстро и легко, что весьма порадовало Б.С. Но вот дальше
    обнаружилось, что скорость работы этой программы крайне мала. Как говорят, ее не хватало даже
    для того, чтобы насчитать необходимые данные к моменту защиты дисертации. Эффект этого произвел
    на (неокрепшие ) мозги г-на Страуструпа был ужасен. Но вместо визита к психотерапевту
    он решил создать свой язык, который бы совмещал в себе высокую скорость разработки (от Симулы)
    и высокую скорость выполнения (от С). Т.е. была поставлена задача написания языка C++, во-первых,
    объектно-ориентированного (в понимании Б.С.), а во-вторых, очень эффективного (в плане скорости
    выполнения скомпилированного кода).

    Статья:

    http://steps3d.narod.ru/tutorials/c-minus-minus.html
    Наш ответ:
    http://dshevchenko.biz/content/мой-ответ-алексею-викторовичу

    CKrestKrestGovno, 25 Сентября 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $name = $data->fields["name"];             
    $name = str_replace("\n","",$name);
    $name = str_replace("\r","",$name);
    $name = str_replace("\\","\\\\",$name);
    $name = preg_replace("/'/","&#39",str_replace("\n","",str_replace("\"",""",$name)));

    2, 3 и 4 строчки похожи на серию ударов по мозгу, а последняя на кровавое комбо :)

    Enjoy, 14 Сентября 2011

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

    +154

    1. 1
    2. 2
    $username=strtolower($this->username);
    $user=User::model()->find('LOWER(username)=?',array($username));

    чтоб наверняка
    http://yiiframework.ru/doc/blog/ru/prototype.auth

    DrFreez, 10 Сентября 2011

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

    +147

    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
    <?php
    /*
    	Виджет для формы логина
    */
    class UserLogin extends CWidget
    {
    	public function run()
    	{
                $model = new Login;
                if(!Yii::app()->user->isGuest)
                {
                    $this->render('loginOut', array('model'=>$model));
                } else {
                    $this->render('loginForm', array('model'=>$model));
                }
    	}
    }
    
    /**
     * модель логина
     */
    class Login extends CFormModel
    {
    	public $login;
    	public $pass;
    	public $rememberMe;
    
    	private $_identity;
    
    	public function rules()
    	{
                return array(
                    // username and password are required
                    array('login, pass', 'required', 'message'=>'поле {attribute} не может быть пустым'),
                    // rememberMe needs to be a boolean
                    array('rememberMe', 'boolean'),
                    // password needs to be authenticated
                    array('pass', 'authenticate'),
                );
    	}
    
    	/**
    	 * Declares attribute labels.
    	 */
    	public function attributeLabels()
    	{
                return array(
                    'login'=>'Логин',
                    'pass'=>'Пароль',
                    'rememberMe'=>'Запомнить',
                );
    	}
    
    	/**
    	 * Authenticates the password.
    	 * This is the 'authenticate' validator as declared in rules().
    	 */
    	public function authenticate($pass,$params)
    	{
                $this->_identity=new UserIdentity($this->login,$this->pass);
                if(!$this->_identity->authenticate())
                    $this->addError($pass, empty($params['message'])?'неправильный лоин или пароль':$params['message']);
    	}
    
    	/**
    	 * Logs in the user using the given username and password in the model.
    	 * @return boolean whether login is successful
    	 */
    	public function login()
    	{
                if($this->_identity===null)
                {
                    $this->_identity=new UserIdentity($this->login,$this->pass);
                    $this->_identity->authenticate();
                }
                if($this->_identity->errorCode===UserIdentity::ERROR_NONE)
                {
                    $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days
                    Yii::app()->user->login($this->_identity,$duration);
                    return true;
                } else {
                    return false;
                }
    	}
    }

    xyzdsnxyz, 03 Сентября 2011

    Комментарии (22)
  10. Pascal / Говнокод #7394

    +104

    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
    procedure drawGird( var image1: TImage; needAxisLines: Boolean = True );
    var
      xP, yP: Integer;
      xC, yC: Double;
      h, w, tx, ty: Integer;
      Text: String;
    begin
      image1.Canvas.FillRect( image1.ClientRect );
      accuracy := 1 / cellSize;
      image1.Canvas.Brush.Style := bsClear;
    
      xC := p2cX( 0 );
      while forC( xC, p2cX( image1.Width ), accuracy ) do
        if floor( xC * cellSize ) mod cellSize = 0 then
        begin
          xP := c2pX( xC );
          image1.Canvas.Pen.Color := clSilver;
          image1.Canvas.MoveTo( xP, 0 );
          image1.Canvas.LineTo( xP, image1.Height );
    
          if ( needaxislines ) and ( abs( xC ) > 0.5 ) and
            ( xP > 30 ) and ( xP < image1.Width - 30 ) then
          begin
            image1.Canvas.Pen.Color := clBlack;
            image1.Canvas.MoveTo( xP, c2pY( -0.5 ) );
            image1.Canvas.LineTo( xP, c2pY( 0.5 ) );
          end;
        end;
    
      yC := p2cY( 0 );
      while forC( yC, p2cY( image1.Height ), accuracy ) do
        if floor( yC * cellSize ) mod cellSize = 0 then
        begin
          yP := c2pY( yC );
          image1.Canvas.Pen.Color := clSilver;
          image1.Canvas.MoveTo( 0, yP );
          image1.Canvas.LineTo( image1.Width, yP );
    
          if ( needaxislines ) and ( abs( yC ) > 0.5 ) and
            ( yP > 30 ) and ( yP < image1.Height - 30 ) then
          begin
            image1.Canvas.Pen.Color := clBlack;
            image1.Canvas.MoveTo( c2pX( -0.5 ), yP );
            image1.Canvas.LineTo( c2pX( 0.5 ), yP );
          end;
        end;
    
      xC := p2cX( 0 );
      while forC( xC, p2cX( image1.Width ), accuracy ) do
        if floor( xC * cellSize ) mod cellSize = 0 then
        begin
          xP := c2pX( xC );
    
          if ( needaxislines ) and ( abs( xC ) > 1.5 ) and
            ( xP > 30 ) and ( xP < image1.Width - 30 ) then
          begin
            image1.Canvas.Pen.Color := clBlack;
    
            Text := IntToStr( floor( xC ) );
            h := image1.Canvas.TextHeight( Text ) div 2;
            w := image1.Canvas.TextWidth( Text ) div 2;
    
            image1.Canvas.TextOut( xP - w, c2pY( -0.5 ) + ( h + 3 ) *
              ( ( floor( abs( xC ) ) mod ( ( ( w * 2 + 8 ) div cellSize ) +
              1 ) ) ), Text );
    
          end;
        end;
    
      yC := p2cY( 0 );
      while forC( yC, p2cY( image1.Height ), accuracy ) do
        if floor( yC * cellSize ) mod cellSize = 0 then
        begin
          yP := c2pY( yC );
          if ( needaxislines ) and ( abs( yC ) > 1.5 ) and
            ( yP > 30 ) and ( yP < image1.Height - 30 ) then
          begin
            image1.Canvas.Pen.Color := clBlack;
    
            Text := IntToStr( floor( yC ) );
            h := image1.Canvas.TextHeight( Text ) div 2;
            w := image1.Canvas.TextWidth( Text ) div 2;
    
            image1.Canvas.TextOut( c2pX( -0.5 ) - w * 2 - 2, yP - h, Text );
          end;
        end;
    
      image1.Canvas.Brush.Style := bsSolid;
    
    end;

    Сотня строк кода, для того, чтобы нарисовать сетку.

    Fai, 30 Июля 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    procedure TForm1.GoBtnClick(Sender: TObject);
    BEGIN
     If GoBtn.Enabled = false then Exit;
     GoBtn.Enabled := false;
    // Some code
    END;

    Вот что бывает, когда не продумаешь весь проект до конца.

    Govnocoder#0xFF, 28 Июля 2011

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