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

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

    +159

    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
    bool CSomeClass::Init( int argc, wchar_t* argv[] )
    
    {
    
          bool isOk = true;
    
          bool goOn = true;
    
          for( int i = 0; isOk && goOn; ++i ) {
    
                switch( i ) {
    
                      case 0:
    
                            isOk = checkCommandLine( argc, argv );
    
                            break;
    
                      case 1:
    
                            isOk = checkFileExistence();
    
                            break;
    
                      case 2:
    
                            isOk = initFiles();
    
                            break;
    
                      default:
    
                            goOn = false;
    
                }
    
          }
    
          return isOk;
    
    }

    w100, 14 Мая 2011

    Комментарии (20)
  3. Си / Говнокод #6636

    +146

    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
    char* a(int pos, char* path)
    { 
        FILE *dbf;
          char value; 
          int i,j,k,l,m,n,o,p,r;
          int numrecs, recnum; 
          Record rec;
          char aa[158];
          char *pp;
          int ln, lp, lc, le, lw, li, ls, lph, lf;    
    
          numrecs = rec.length; 
          recnum = pos;
        dbf = OpenDB(path, &rec);
        ReadRecord(dbf, recnum, &rec);    
        
            ln = strlen(rec.name);
            ls = strlen(rec.surname);
            lp = strlen(rec.patronymic);
            lph = strlen(rec.phone);
            lc = strlen(rec.city);
            le = strlen(rec.edu);
            lw = strlen(rec.work);
            li = strlen(rec.interests);
            lf = strlen(rec.friends);
    
            itoa(recnum, &(aa[0]), 10);
            for (i = 1; i < ln; i++)
                aa[i] = rec.name[i-1];
            for (j = 0; j < ls; j++)
                aa[i+j] = rec.surname[j];
            for (k = 0; k < lp; k++)
                aa[i+j+k] = rec.patronymic[k];
            for (l = 0; l < lph; l++)
                aa[i+j+k+l] = rec.phone[l];
            for (m = 0; m < lc; m++)
                aa[i+j+k+l+m] = rec.city[m];
            for (n = 0; n < le; n++)
                aa[i+j+k+l+m+n] = rec.edu[n];
            for (o = 0; o < lw; o++)
                aa[i+j+k+l+m+n+o] = rec.work[o];
            for (p = 0; p < li; p++)
                aa[i+j+k+l+m+n+o+p] = rec.interests[p];
            for (r = 0; r < lf; r++)
                aa[i+j+k+l+m+n+o+p+r] = rec.friends[r];
    
        pp = strdup(aa);  
        return pp;
    }

    dotnetdeveloper, 12 Мая 2011

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

    +159

    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
    if (!$vid['video_code']) {
            $vars['player'] = 'Онлайн промотр недоступен (не указан плеер)';
            if ($vid['image'] != '') {
                $vars['image'] = RealPath2($config['video']['images_dir'] . SafeDB($vid['image'], 255, str));
                $vars['thumb_image'] = RealPath2($config['video']['images_dir'] . 'thumbs/' . SafeDB($vid['image'], 255, str));
            } else {
                $vars['image'] = false;
            }
        } else {
            if (!$user->Auth and $config['video']['hide_video_guest']) {
                $vars['player'] = '<a href="index.php?name=user&op=registration">Зарегистрируйтесь для просмотра видео онлайн.</a>';
                if ($vid['image'] != '') {
                    $vars['image'] = RealPath2($config['video']['images_dir'] . SafeDB($vid['image'], 255, str));
                    $vars['thumb_image'] = RealPath2($config['video']['images_dir'] . 'thumbs/' . SafeDB($vid['image'], 255, str));
                } else {
                    $vars['image'] = false;
                }
            } else {
                $vars['player'] = $vid['video_code'];
                $vars['image'] = false;
            }
        }

    Мартин, 07 Мая 2011

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

    +166

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    // Если регистрация, то показываем контрольный вопрос
    if($_GET['op'] == 'registration') {
    $vars['c_question'] = true;
    } else {
    $vars['c_question'] = false;
    }

    Классика

    Мартин, 02 Мая 2011

    Комментарии (20)
  6. JavaScript / Говнокод #6470

    +174

    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
    var RemainsFullDays=(parseInt(RemainsSec/(24*60*60)));
    var days=" дней "
    if (
                RemainsFullDays==2 ||
                RemainsFullDays==3 ||
                RemainsFullDays==4 ||
                RemainsFullDays==22 ||
                RemainsFullDays==23 ||
                RemainsFullDays==24 ||
                RemainsFullDays==42 ||
                RemainsFullDays==43 ||
                RemainsFullDays==44 ||
                RemainsFullDays==52 ||
                RemainsFullDays==53 ||
                RemainsFullDays==54 ||
                RemainsFullDays==62 ||
                RemainsFullDays==63 ||
                RemainsFullDays==64 ||
                RemainsFullDays==72 ||
                RemainsFullDays==73 ||
                RemainsFullDays==74 ||
                RemainsFullDays==82 ||
                RemainsFullDays==83 ||
                RemainsFullDays==84 ||
                RemainsFullDays==92 ||
                RemainsFullDays==93 ||
                RemainsFullDays==94 ||
                RemainsFullDays==102 ||
                RemainsFullDays==103 ||
                RemainsFullDays==104 ||
                RemainsFullDays==122 ||
                RemainsFullDays==123 ||
                RemainsFullDays==124 ||
                RemainsFullDays==132 ||
                RemainsFullDays==133 ||
                RemainsFullDays==134 ||
                RemainsFullDays==32 ||
                RemainsFullDays==33 ||
                RemainsFullDays==34
                ) {
                days=" дня "
    }
    
    if (
                RemainsFullDays==1 ||
                RemainsFullDays==21 ||
                RemainsFullDays==41 ||
                RemainsFullDays==51 ||
                RemainsFullDays==61 ||
                RemainsFullDays==71 ||
                RemainsFullDays==81 ||
                RemainsFullDays==91 ||
                RemainsFullDays==121 ||
                RemainsFullDays==131 ||
                RemainsFullDays==141 ||
                RemainsFullDays==151 ||
                RemainsFullDays==31 
                ) {
                days=" день "
    }

    Найдено на препарируемом клиентском сайте рядом со счётчиком. Бессмертная вариация на тему классики!

    Особо замечательно что про 31 день явно вспомнили в последний момент.

    dimasokol, 25 Апреля 2011

    Комментарии (20)
  7. Assembler / Говнокод #6452

    +234

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    00614A77  |.  8BF0          MOV ESI,EAX
    00614A79  |.  BB 01000000   MOV EBX,1
    00614A7E  |.  EB 01         JMP SHORT 00614A81
    00614A80  |>  43            /INC EBX
    00614A81  |>  3BF3           CMP ESI,EBX
    00614A83  |.  7C 07         |JL SHORT 00614A8C
    00614A85  |.  807C1F FF 20  |CMP BYTE PTR DS:[EDI+EBX-1],20
    00614A8A  |.^ 76 F4         \JBE SHORT 00614A80

    Оптимизация компилятора

    Xekep, 22 Апреля 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public function setAmbiguityIdentity($flag)
        {
            if (is_integer($flag)) {
                $this->_ambiguityIdentity = (1 === $flag ? true : false);
            } elseif (is_bool($flag)) {
                $this->_ambiguityIdentity = $flag;
            }
            return $this;
        }

    Zend Framework компонент Zend_Auth_Adapter_DbTable. (Слегка смутила строка 4)

    sonic, 21 Апреля 2011

    Комментарии (20)
  9. C# / Говнокод #6379

    +126

    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
    g.Graphics.DrawLine( p, this.pb.Width / 2 + 126, this.pb.Height / 2 + 176, this.pb.Width / 2 + 126, this.pb.Height / 2 + 176 + 20 );
                        g.Graphics.DrawLine( p, this.pb.Width / 2 - 126, this.pb.Height / 2 + 176, this.pb.Width / 2 - 126, this.pb.Height / 2 + 176 + 20 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 - 126, this.pb.Height / 2 + 176 + 20, this.pb.Width / 2 + 126, this.pb.Height / 2 + 176 + 20 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 - 126, this.pb.Height / 2 + 176 + 20, this.pb.Width / 2 - 126 + 8, this.pb.Height / 2 + 176 + 15 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 - 126, this.pb.Height / 2 + 176 + 20, this.pb.Width / 2 - 126 + 8, this.pb.Height / 2 + 176 + 25 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 + 126, this.pb.Height / 2 + 176 + 20, this.pb.Width / 2 + 126 - 8, this.pb.Height / 2 + 176 + 15 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 + 126, this.pb.Height / 2 + 176 + 20, this.pb.Width / 2 + 126 - 8, this.pb.Height / 2 + 176 + 25 );
                        g.Graphics.FillRectangle( Brushes.White, this.pb.Width / 2 - 25, this.pb.Height / 2 + 176 + 10, 50, 20 );
                        g.Graphics.DrawString( this.textBox1.Text + " mm", new Font( "Arial", 8 ), new SolidBrush( Color.Black ), this.pb.Width / 2 - 21, this.pb.Height / 2 + 176 + 12 );
    
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 - (int)paint_nozh_fill / 2, this.pb.Height / 2, this.pb.Width / 2 + (int)paint_nozh_fill / 2, this.pb.Height / 2 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 - (int)paint_nozh_fill / 2, this.pb.Height / 2, this.pb.Width / 2 - (int)paint_nozh_fill / 2 + 8, this.pb.Height / 2 - 5 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 - (int)paint_nozh_fill / 2, this.pb.Height / 2, this.pb.Width / 2 - (int)paint_nozh_fill / 2 + 8, this.pb.Height / 2 + 5 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 + (int)paint_nozh_fill / 2, this.pb.Height / 2, this.pb.Width / 2 + (int)paint_nozh_fill / 2 - 8, this.pb.Height / 2 - 5 );
                        g.Graphics.DrawLine( new Pen( Color.Black ), this.pb.Width / 2 + (int)paint_nozh_fill / 2, this.pb.Height / 2, this.pb.Width / 2 + (int)paint_nozh_fill / 2 - 8, this.pb.Height / 2 + 5 );
                        g.Graphics.FillRectangle( Brushes.White, this.pb.Width / 2 - 25, this.pb.Height / 2 - 10, 50, 20 );
                        g.Graphics.DrawString( this.getNozhFill( ).ToString( ) + " mm", new Font( "Arial", 8 ), new SolidBrush( Color.Black ), this.pb.Width / 2 - 21, this.pb.Height / 2 - 8 );

    Человек похоже перепутал визул студию с фотошопом, но закрывать не стал )) Этот код рисует чертеж - примем со стрелочками, с откосами и даже(!) с отбрасывает тень. Понятия не имею как преписывать

    glilya, 16 Апреля 2011

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

    +167

    1. 1
    Перейти на страницу <span onmouseover="this.className='menu_over'" onmouseout="this.className='menu'" class="menu" onClick="window.location='<?echo $arItem["DETAIL_PAGE_URL"]?>'">--></span>

    тег "a" видимо был незнаком.

    Fisher, 30 Марта 2011

    Комментарии (20)
  11. C++ / Говнокод #6003

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    __int64 timestamp;
    
    	// Get nanoseconds since 1601
    	timestamp = rand() + (((__int64)rand()) << 32);
    	timestamp /= 100;

    очень вольная работа со временем...

    kubrinsky, 16 Марта 2011

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