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

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

    +7

    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
    #include <iostream>
    #include <alloca.h>
    #include <stdlib.h>
    #include <new>
    using namespace std;
    
    int main(void) {
      const size_t N = 5+rand()%4;
      char* arr = ::new (alloca(N)) char[N]{1,2,3,4};
      for(size_t i=0; i<N; ++i)
        cout<<(int)arr[i]<<endl;
      cout<<"ok";
      return 0;
    }

    http://ideone.com/pax1TF

    LispGovno, 18 Января 2014

    Комментарии (77)
  3. Ruby / Говнокод #14245

    −87

    1. 1
    2. 2
    # ugh
    task = task.task.task

    http://programmingisterrible.com/post/50285403468/a-lifetime-of-terrible-code

    someone, 18 Декабря 2013

    Комментарии (77)
  4. C++ / Говнокод #13189

    +18

    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
    #include "math.h"
    #include <iostream>
    
    void Resolve(
    	float a, float b, float c,     // коэффициенты уравнения
    	int& count, float x[2]  // число корней, сами корни
    	// если корней нет, то значения x[0] и x[1] не определены
    	// если корень один, то значение x[1] не определено
    	// если  корней бесконечно много, то вернуть INT_MAX
    	// предполагается, что a,b,c и корни по модулю не превосходят 1E10
    	)
    {
    	const float MAXFREV = 1e-10f;
    	if (a==0.0 && b==0.0 && c==0.0)
    	{
    		count = INT_MAX;
    	} else
    	{
    		count = 0;
    		float d = b*b-4.0f*a*c;
    		if (d==0.0f)
    		{
    			if (2.0f*abs(a)>abs(b)*MAXFREV) 
    				x[count++] = -b/(2.0f*a);
    		} else if (d>0.0f)
    		{
    			float num = -b - sqrt(d);
    			if (2.0f*abs(a)>abs(num)*MAXFREV)
    				x[count++] = num/(2.0f*a); // (-b-sqrt(d))/2a
    			if (abs(num)>2.0f*abs(c)*MAXFREV)
    				x[count++]=(2.0f*c)/num;
    		}
    	}
    }
    
    
    int main () 
    {
    	float x[2];
    	int count;
    	Resolve (0.0001f,2.000f,0.001f, count, x);
    	std::cout << "count= " << count;
    	if (count<=2)
    		for (int i=0; i<count; ++i)
    			std::cout << ", x[" << i << "]= " << x[i];
    	std::cout<<std::endl;
    	return 0;
    }

    Просто решение квадратного уравнения.
    На флоатах.
    Числа подобраны так, что классическая формула лажает, выдавая второй корень -0.000596 вместо -0.0005

    TarasB, 18 Июня 2013

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

    +82

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var
      u: longint;
     
    begin
      u := $-80000000;
      writeln(u);
    end.

    Жуквери в Дельфи7. Компилируется.

    TarasB, 18 Декабря 2012

    Комментарии (77)
  6. Python / Говнокод #12137

    −112

    1. 1
    while h == h

    Делал так раньше, когда не знал про while True

    lancerok, 16 Ноября 2012

    Комментарии (77)
  7. C++ / Говнокод #9385

    +997

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    for (int z=NewArray[y-1];z<(NewArray[y]-1);z++)
                    {
                      AnsiString ts = IntToStr(z+1);
                      int inum = -1;
                      try{
                        inum = StrToInt(ts);
                      } catch(...) {}
    ..... //дальше inum не используется
                    }

    Завис надолго. Так и не понял, зачем автор преобразовывает ts обратно

    dm-ua, 10 Февраля 2012

    Комментарии (77)
  8. C++ / Говнокод #8588

    +1015

    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
    GetScreenShot()
    {
      std::string NameScreen = ToString(GameLevel->EngineName) + "_" + ToString(GTime->GetTimeDays()) + "_" + ToString(GTime->GetTimeHours()) + "_" + ToString(GTime->GetTimeSec()) + ".bmp";
    
      IDirect3DTexture9 *tex;
      IDirect3DSurface9 *surf;
      D3DVIEWPORT9 vp;
    
      Device->GetViewport(&vp);
        if FAILED(Device->CreateTexture(vp.Width, vp.Height, 1, 0, D3DFMT_A8R8G8B8,D3DPOOL_SYSTEMMEM, &tex, NULL ))
          Beep(1000,100);
        
        if FAILED(tex->GetSurfaceLevel(0, &surf))
          Beep(500,100);
        if FAILED(Device->GetFrontBufferData(0, surf)) 
          Beep(200,100);
        D3DXSaveSurfaceToFile(ToPointChar(ToString(Pather::CutPath()) + "\\ScreenShots\\" + NameScreen), D3DXIFF_BMP, surf, NULL, NULL);
      surf->Release();
      tex->Release();
    }

    http://www.gamedev.ru/code/forum/?id=154941

    dos_, 20 Ноября 2011

    Комментарии (77)
  9. Pascal / Говнокод #8199

    +106

    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
    93. 93
    procedure Tform1.mix;
    begin
     randomize;
     a[1]:=random(16)+1;
     btn[1].Caption:=inttostr(a[1]);
    begin
    repeat
     a[2]:=random(16)+1
    until
     a[2]<>a[1];
     btn[2].Caption:=inttostr(a[2]);
    begin
    repeat
     a[3]:=random(16)+1
    until
     (a[3]<>a[2]) and (a[3]<>a[1]);
     btn[3].Caption:=inttostr(a[3]);
    begin
    repeat
     a[4]:=random(16)+1
    until
     (a[4]<>a[2]) and (a[4]<>a[1]) and (a[4]<>a[3]);
     btn[4].Caption:=inttostr(a[4]);
    begin
    repeat
     a[5]:=random(16)+1
    until
     (a[5]<>a[2]) and (a[5]<>a[1]) and (a[5]<>a[3]) and (a[5]<>a[4]);
     btn[5].Caption:=inttostr(a[5]);
    begin
    repeat
     a[6]:=random(16)+1
    until
     (a[6]<>a[1]) and (a[6]<>a[2]) and (a[6]<>a[3]) and (a[6]<>a[4])
     and (a[6]<>a[5]);
     btn[6].Caption:=inttostr(a[6]);
    begin
    repeat
     a[7]:=random(16)+1
    until
     (a[7]<>a[1]) and (a[7]<>a[2]) and (a[7]<>a[3]) and
     (a[7]<>a[4]) and (a[7]<>a[5]) and (a[7]<>a[6]);
     btn[7].Caption:=inttostr(a[7]);
    begin
    repeat
     a[8]:=random(16)+1
    until
     (a[8]<>a[1]) and (a[8]<>a[2]) and (a[8]<>a[3]) and
     (a[8]<>a[4]) and (a[8]<>a[5]) and (a[8]<>a[6]) and (a[8]<>a[7]);
     btn[8].Caption:=inttostr(a[8]);
    begin
    repeat
     a[9]:=random(16)+1
    until
     (a[9]<>a[1]) and (a[9]<>a[2]) and (a[9]<>a[3]) and (a[9]<>a[4]) and
     (a[9]<>a[5]) and (a[9]<>a[6]) and (a[9]<>a[7]) and (a[9]<>a[8]);
     btn[9].Caption:=inttostr(a[9]);
    ...
    ...
    ...
    begin
    repeat
     a[14]:=random(16)+1
    until
     (a[14]<>a[1]) and (a[14]<>a[2]) and (a[14]<>a[3])
     and (a[14]<>a[4]) and (a[14]<>a[6]) and
     (a[14]<>a[7]) and (a[14]<>a[5]) and (a[14]<>a[9])
     and (a[14]<>a[8]) and (a[14]<>a[10]) and
     (a[14]<>a[11]) and (a[14]<>a[12]) and (a[14]<>a[13]);
     btn[14].Caption:=inttostr(a[14]);
    begin
    repeat
     a[15]:=random(16)+1
    until
     (a[15]<>a[1]) and (a[15]<>a[2]) and (a[15]<>a[3]) and
     (a[15]<>a[4]) and (a[15]<>a[6]) and (a[15]<>a[7]) and
     (a[15]<>a[5]) and (a[15]<>a[9]) and (a[15]<>a[8]) and
     (a[15]<>a[10]) and (a[15]<>a[11]) and (a[15]<>a[12])
     and (a[15]<>a[13]) and (a[15]<>a[14]);
     btn[15].Caption:=inttostr(a[15]);
    begin
    repeat
     a[16]:=random(16)+1
    until
     (a[16]<>a[1]) and (a[16]<>a[2]) and (a[16]<>a[3]) and
     (a[16]<>a[4]) and (a[16]<>a[6]) and (a[16]<>a[7]) and
     (a[16]<>a[5]) and (a[16]<>a[9]) and (a[16]<>a[8]) and
     (a[16]<>a[10]) and (a[16]<>a[11]) and (a[16]<>a[12])
     and (a[16]<>a[13]) and (a[16]<>a[14]) and (a[16]<>a[15]);
     btn[16].Caption:=inttostr(a[16]);
     timer3.Enabled:=true;
    end; end; end; end; end; end; end; end; end;
    end; end; end; end; end; end; end;

    Это у меня однокурсник писал пятнашки(данная процедура заполняет массив неповторяющимися числами от одного пятнадцати), и не лень же ему было...

    suc-daniil, 14 Октября 2011

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

    +158

    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
    protected function composeResolvers()
        {
            require_once systemConfig::$pathToSystem . '/resolver/init.php';
            require_once systemConfig::$pathToSystem . '/resolver/templateMediaResolver.php';
            require_once systemConfig::$pathToSystem . '/resolver/moduleMediaResolver.php';
            require_once systemConfig::$pathToSystem . '/resolver/extensionBasedModuleMediaResolver.php';
            require_once systemConfig::$pathToSystem . '/core/fileLoader.php';
    
            $baseresolver = new compositeResolver();
            $baseresolver->addResolver(new fileResolver(systemConfig::$pathToApplication . '/*'));
            $baseresolver->addResolver(new fileResolver(systemConfig::$pathToWebRoot . '/*'));
            $baseresolver->addResolver(new fileResolver(systemConfig::$pathToSystem . '/*'));
    
            $resolver = new compositeResolver();
            $resolver->addResolver(new templateMediaResolver($baseresolver));
            $resolver->addResolver(new moduleMediaResolver($baseresolver));
            $resolver->addResolver(new extensionBasedModuleMediaResolver($baseresolver));
            $resolver->addResolver(new classFileResolver($baseresolver));
    
            if (function_exists('external_callback')) {
                external_callback($resolver, $baseresolver);
            }
    
            return new cachingResolver($resolver, 'resolver_media_cache');
        }

    Прямиком с http://govnokod.googlecode.com/svn/trunk/govnoquoter/www/bundle.php
    Там ещё много всего интересного!

    Govnocoder#0xFF, 07 Декабря 2010

    Комментарии (77)
  11. PHP / Говнокод #3595

    +103

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    fputs(fopen("ttext.txt", "w+"),"Мега текст!"); # создание файла и запись
    fpassthru(fopen("ttext.txt", "w+")); # отображение
    copy("ttext.txt", "ttext2.txt"); # копирование
    fputs(fopen("ttext2.txt", "w+"), "скопированный Мега текст"); # запись
    rename("ttext2.txt", "dctext.txt"); # переименование
    fpassthru(fopen("dctext.txt", "w+")); # отображение
    unlink("dctext.txt"); # удаление
    fclose(fopen("ttext.txt", "w+")); # закрытие

    Vasiliy, 29 Июня 2010

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