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

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

    +95

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function bth(ds: byte): string;
     const
     b: string = '0123456789ABCDEF';
    begin
    Result:= b[(ds shr 4) + 1] + b[(ds and $F) + 1];
    end;

    Некоторое время назад потребовалось конвертить Byte в Hex. Стандартных способов не нашёл, а ничего лучше такой говнокодки выдумать не получилось. Сейчас смотрю и разбирает смех - весёлые были времена!

    Alegun, 27 Апреля 2012

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

    +95

    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
    <table style="width: 100%">
    				<tr>
    					<td rowspan="2" style="width: 39px">&nbsp;</td>
    					<td height="22px" width="306px" background="/templates/images/all_for_your.jpg" style="background-repeat: no-repeat;"></td>
    					<td>&nbsp;</td>
    				</tr>
    				<tr>
    					<td width="306px">
    						<table  class="style2" style="height: 147px;" >
    <tr>
    					<!--<td height="22px" width="306px" background="/templates/images/all_for_your.jpg">
    				</td>-->
    				</tr>
    				<tr>
    					<td class="style14" style="height: 21px;"><a href="page13.html" <?php if ($_GET['id'] == 13) echo "style=\"color: red;\""; ?>> ччччч</td>
    				</tr>
    								<tr>
    					<td class="style14" style="height: 21px;"><a href="page12.html" <?php if ($_GET['id'] == 12) echo "style=\"color: red;\""; ?>> фвургия</td>
    				</tr>
    								<tr> 
    					<td class="style14" style="height: 21px; ">
    					<a href="page8.html" <?php if ($_GET['id'] == 8) echo "style=\"color: red;\""; ?>> ывфыв</a> </td>
    			    </tr>
    				<tr>
    					<td class="style14" style="height: 21px; ;"><a href="page9.html" <?php if ($_GET['id'] == 9) echo "style=\"color: red;\""; ?>> ыывсия</td>
    				</tr>
    				<tr>
    					<td class="style14" style="height: 21px; "><a href="page43.html" <?php if ($_GET['id'] == 43) echo "style=\"color: red;\""; ?>> Вмиика</td>
    				</tr>				
    				<tr>
    					<td class="style14" style="height: 21px; "><a href="page10.html" <?php if ($_GET['id'] == 10) echo "style=\"color: red;\""; ?>>ние</td>
    				</tr>
    					<tr>
    					<td class="style14" style="height: 21px; "><a href="page14.html" <?php if ($_GET['id'] == 14) echo "style=\"color: red;\""; ?>>Одыа 
    					</td>
    				</tr>
    					<tr>
    					<td class="style14" style="height: 21px; "><a href="page22.html" <?php if ($_GET['id'] == 22) echo "style=\"color: red;\""; ?>> Оысия</td>
    				</tr>
    			</table>

    Один из старых сайтов нашел:)

    EGR, 23 Апреля 2012

    Комментарии (2)
  4. Pascal / Говнокод #9854

    +95

    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
    cbZoom.Items.AddObject('125%', TObject(125));
    cbZoom.Items.AddObject('120%', TObject(120));
    cbZoom.Items.AddObject('115%', TObject(115));
    cbZoom.Items.AddObject('110%', TObject(110));
    cbZoom.Items.AddObject('105%', TObject(105));
    cbZoom.Items.AddObject('100%', TObject(100));
    cbZoom.Items.AddObject('95%', TObject(95));
    cbZoom.Items.AddObject('90%', TObject(90));
    cbZoom.Items.AddObject('85%', TObject(85));
    cbZoom.Items.AddObject('80%', TObject(80));
    cbZoom.Items.AddObject('75%', TObject(75));
    cbZoom.Items.AddObject('70%', TObject(70));
    cbZoom.Items.AddObject('65%', TObject(65));
    cbZoom.Items.AddObject('60%', TObject(60));
    cbZoom.Items.AddObject('55%', TObject(55));
    cbZoom.Items.AddObject('50%', TObject(50));
    cbZoom.Items.AddObject('45%', TObject(45));
    cbZoom.Items.AddObject('40%', TObject(40));
    cbZoom.Items.AddObject('35%', TObject(35));
    cbZoom.Items.AddObject('30%', TObject(30));
    cbZoom.Items.AddObject('25%', TObject(25));
    cbZoom.Items.AddObject('20%', TObject(20));
    cbZoom.Items.AddObject('15%', TObject(15));
    cbZoom.Items.AddObject('10%', TObject(10));
    cbZoom.ItemIndex := 5; //100%

    вот кто-то так решил набить комбобокс...

    hexman, 04 Апреля 2012

    Комментарии (7)
  5. Pascal / Говнокод #9229

    +95

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    procedure TEditor.cbReverseClick(Sender: TObject);
    begin
      T.Reversed := not T.Reversed;
      Show;
    end;

    Вместо
    T.Reversed := cbReverse.Checked;
    Интересно, может ли это создать баг?

    TarasB, 26 Января 2012

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

    +95

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    // со времен Delphi 7.
    procedure TfrmMain.AppDeactivate(Sender: TObject);
    begin
      OpenClipboard(0);
      if (IsClipboardFormatAvailable(CF_TEXT)) then SetClipboardData(CF_LOCALE, 0);
      CloseClipboard();
    end;

    Полагаю, большинство в курсе, что при копировании русского текста из приложения, написанного на дельфи, в другое приложение иногда копируются кракозябры.
    Это происходит, когда при копировании НЕ выбрана русская раскладка клавиатуры.

    Удалось вылечить так.

    ctm, 10 Января 2012

    Комментарии (37)
  7. Pascal / Говнокод #4657

    +95

    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
    function  TForm1.beta(i:integer) : integer;
    var bt:integer;
    begin
    bt:=0;
    curI:=i;
    if (alf=1) and (cad=0) then
    begin
    if i<=26 then bt:=2;
    if (i<=36) and (i>=27) then bt:=3;
    if (i<=48) and (i>=37) then  begin  bt:=1; addortolexlist(cT);  end;
    if i=49 then bt:=4;
    if i=50 then bt:=5;
    if i=51 then bt:=6;
    if i=52 then bt:=7;
    end;
    if (alf=2) and (cad=0) then
    begin
    if i<=26 then bt:=2;
    if (i<=36) and (i>=27) then bt:=2;
    end;
    if (alf=3) and (cad=0) then
    begin
    if (i<=36) and (i>=27) then bt:=3;
    end;
    if (alf=4) and (cad=0) then
    begin
    if i=50 then
    begin
     Tl[lexnow].n:=jj;
      Tl[lexnow].subst:='<>';
      Tl[lexnow].lexcod:=21;
      Tl[lexnow].index:=0;
      bt:=1;
       inc(lexnow);
       ii:=ii+1;
    end;
    if i=51 then
    begin
      Tl[lexnow].n:=jj;
      Tl[lexnow].subst:='<=';
      Tl[lexnow].lexcod:=24;
      Tl[lexnow].index:=0;
     bt:=1;
     ii:=ii+1;
        inc(lexnow);
    end;

    Кусок кода из лабораторной работы по трансляторам. Как сказал парень - "Я не умею пользоваться функциями, поэтому я все пишу на массивах" О_о
    Дальше в коде заполнение массивов размерностью в сотню элементов вручную!
    Главное, что всё работает...

    niravzi, 17 Ноября 2010

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

    +95

    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
    program z1;
    
     function func (x: real): real;
     const e = 0.000000000000001; {15 знаков после запятой}
     var f: real; {переменая для расчета двойного факториала}
         i, k: integer; {счетчик проходов, i-общий, k-частный}
         d: real; {добавляемая дельта}
         y: real; {переменная искомого значения}
     begin
      y := 1.0;
      i := 1;
      repeat
        f := 1;                 {----------}
        k := i;                 {--расчет--}
        while (k >= 2) do begin {-двойного-}
          f := f * k;           {факториала}
          k := k - 2;           {----------}
        end;                    {----------}
        
        d := 1;                 {---------------------}
        for k := 1 to i do      {считаем степень числа}
          d := d * x;           {---------------------}
        
        d := d / f;             {-----------------находим d-----------------}
        if (d < e) then break;  {проверяем ее на попадание в разрядную сетку}
        
        y := y + d;
        i := i + 1;
      until (false);
      func := y;
     end;
     
    var x: real;
     
    begin
      write ('Введите x: ');
      readln (x);
      writeln ('y = ', func (x):3:15);
    end.

    maksim_ovcharik, 09 Ноября 2010

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

    +95

    1. 1
    2. 2
    3. 3
    4. 4
    result = result == 0 ? tempResult
                            : (tempResult == 0 ? result
                            : (result == tempResult ? result : result
                            * tempResult));

    utinger, 02 Сентября 2010

    Комментарии (15)
  10. C++ / Говнокод #1191

    +95

    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
    void Mouse(int button, int state, int x, int y)
    {
    	if ((button==GLUT_LEFT_BUTTON) && (state==GLUT_DOWN))
    	{
    		y=WIN_HEIGHT-1-y;
    		if (y<233)
    		{
    			if ((field[x/26][y/26]).busy)
    			{
    				begin_trace_x=x/26;
    				begin_trace_y=y/26;
    			}
    			else
    				if ((begin_trace_x!=-1)&&(begin_trace_y!=-1))
    				{
    					end_trace_x=x/26;
    					end_trace_y=y/26;
    					if (!checkField())
    						game_over=true;
    					else
    						if (findTrace())
    						{
    							moveBall();
    							if (!countScore())
    							{
    								throwBalls();
    								countScore();
    							}
    						}
    				}
    		}
    		glutPostRedisplay();
    	}
    }

    Вот. Игрушку Lines писал когда-то.

    guest, 12 Июня 2009

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

    +94.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    I := 0;
            While clbDBList.ItemIndex < I+1 do // пробегаемся циклом по списку баз данных.
              begin
                If clbDBList.Checked[Ix] then // Если база отмечена, производим её обновление.
                  begin
                      //тут действия.. 
                  end;
                Inc(I);
              end;

    В общем условие While цикла.. когда я увидел.. долго думал что я такого курил, когда писал это... )))

    XIO, 17 Августа 2009

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