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

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

    0

    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
    function main()
    {
    	print("before");		
    
    	try
    	{
    		throw 1;
    	}
    	catch (x: any)
    	{
    		print("catch");		
    	}
    
    	print("end");		
    }

    Самый большей говнокод за всю историю человечества сделан.

    ASD_77, 10 Сентября 2021

    Комментарии (117)
  3. Assembler / Говнокод #16890

    +165

    1. 1
    2. 2
    mov eax, 4
    add dx, eax

    Во время службы попал я в ракетные войска и для облегчения жизни своей писал себе разные прожки старые бабки всё время как-бы невзначай крутились возле кабинета, и всё спрашивали, что ты там затих, почему тебя не слышно? первый раз я не ответил, так они начали ломиться в дверь, и орать, что ты там молчишь, что с тобой? начали материться, и говорить, что вообще дверь с петель снимут, алсо, они ругаются, если я компилю в дебаг режиме и отдаю заму, причём не просто вконце тестов, а непосредственно после дебага, мотивировал это тем, что лишний мусор, и сами потом мне говорили: вот мы скомпилим в релиз, и ты так делай! однажды я прожить сел, и слышу, бабки где-то у двери встали в отдалении, ну я в дебаге цикл прогнал, и на пол накарачики присел, а там щель очень широкая снизу у двери, ну я в щель и смотрю, а там бабки на карачиках сидит и в щель смотрит, и мне говорит: ты чё? ебанутый? чё ты там делаешь? бабки кстати всё время какие-то мануалы читают, чтобы писать сразу в машинном коде, пишут в интел прям через хекс редактор, а потом говорят, что ассемблер надоел, и ещё не толкают в esi ссылки на функции. пиздец короче! реальная история. я не тролль

    DesmondHume, 18 Октября 2014

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

    +158

    1. 1
    <<?='b'.'o'.'d'.'y'?> class="p0 m0">

    Чье-то из какой-то самописной CMS в шаблоне..) таким способом выводятся многие теги))

    Cyril, 22 Мая 2014

    Комментарии (117)
  5. Java / Говнокод #11490

    +79

    1. 1
    String url = m_launchUrl.replaceAll(" ", "%20");

    Percent-encode по-Адобовски.

    http://svn.apache.org/repos/asf/incubator/flex/trunk/modules/debugger/src/java/flash/tools/debugger/concrete/PlayerSession.java

    wvxvw, 29 Июля 2012

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

    +163

    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
    ....
    this.add_var = function(code){
      if(!this.undef.oneOf(code[1])){
        vName = code[1];
        if(this.isName(vName)){
          if(this.type[vName] == undefined){
            this.type[vName] = 'var';
            if(code[2] == '='){
              if(!this.undef.oneOf(code[3])){
                if(this.isNumber(code[3])){
                  value = parseFloat(code[3]);
                  this.vars[vName] = value;
                  return value;
                }else if(this.isName(code[3])){
                  if(this.vars[code[3]] != undefined){
                    value = this.vars[code[3]];
                    this.vars[vName] = value;
                    return value;
                  }else{
                    return 'Error:variable ' + code[3] + ' undefined.'
                  }
                }else{
                  return 'Error:value must be variable or number'
                }
              }else{
                return 'Error:you not type var value.'
              }
            }else{
              return 'nil';
            }
          }else{
            return 'Error:variable already defined.';
          }
        }else{
          return 'Error: in variable name.'
        }
      }else{
        return 'Error: you not type var name.'
      }
    }
    ....

    Часть исходника интерпретатора функционального ЯПа добавляющая переменные в контекст.
    Представляет собой каскад всевозможных проверок.

    art543484, 01 Января 2011

    Комментарии (117)
  7. Си / Говнокод #27753

    0

    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
    // https://github.com/x42/darc.lv2/blob/7f1f42b879777e570c83fd566ac28cbfdd51e6fc/src/lv2.c#L508
    static void
    create_pattern (Darc* self, const double w)
    {
    	const int x0 = floor (w * 0.05);
    	const int x1 = ceil (w * 0.95);
    	const int wd = x1 - x0;
    
    #define DEF(x) ((x0 + wd * ((x) + 20.) / 60.) / w)
    
    	cairo_pattern_t* pat = cairo_pattern_create_linear (0.0, 0.0, w, 0);
    	/* clang-format off */
    	cairo_pattern_add_color_stop_rgba (pat, 1.0,       .0, .5, .0, 0);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (40),  .0, .5, .0, 0.5);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (5),   .0, .5, .0, 0.5);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (-5),  .5, .0, .0, 0.5);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (-20), .5, .0, .0, 0.5);
    	cairo_pattern_add_color_stop_rgba (pat, 0.0,       .5, .0, .0, 0);
    	/* clang-format on */
    	self->mpat = pat;
    
    	pat = cairo_pattern_create_linear (0.0, 0.0, w, 0);
    	/* clang-format off */
    	cairo_pattern_add_color_stop_rgba (pat, 1.0,       .1, .9, .1, 0);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (40),  .1, .9, .1, 1);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (5),   .1, .9, .1, 1);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (-5),  .9, .9, .1, 1);
    	cairo_pattern_add_color_stop_rgba (pat, DEF (-20), .9, .9, .1, 1);
    	cairo_pattern_add_color_stop_rgba (pat, 0.0,       .9, .9, .1, 0);
    	/* clang-format on */
    	self->cpat = pat;
    
    #undef DEF
    }

    Отключаем и включаем clang-формат, чтобы отступы красиво были. Да еще и такой вот локальный дефайн!

    j123123, 17 Октября 2021

    Комментарии (116)
  8. JavaScript / Говнокод #26415

    +3

    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
    var   words=
        [
     
            {   
                 'тупая русня ':1/10
                ,'на бутылку':1/8
                ,'у тебя же прыщи':1/12
                ,'руснявый':1/8
                ,'прыщеблядский':1/8
                ,',обоссался':1/10
                ,'обоссал':1/10
                ,', маму твою ебал,':1/12
                ,'стекломойная русня':1/8
                ,'гермашка': 1/10
                ,'туши пердак':1/8
            }
            ,{
                'садись на бутылку':1/8
            }
            ,{'стекломойный русачок':1/11,' пуйло':1/7,'ко-ко-ко':1/6,'рашка':1/10,', пидорахен':1/10}        
            ,{'пидораха,': 1/6,', пидораха полыхнула,': 1/12
                ,'козлодойч': 1/12
                ,'гермашка': 1/10
             }
            ,{  
                'свинособака':1/6
                ,', мамку ебал,':1/12
                ,'бамп отсосу ':1/13
                ,', маму твою,':1/12            
                ,'скрепы':1/11
                ,' пидораха,':1/8
                ,'cтекломойный':1/8
                ,'стекломоя наебнул':1/8
                ,'садись на бутылку':1/10
                ,'днище':1/7
                ,'русня':1/9
                ,'кремлебот ':1/6
                ,'порватка':1/10            
                ,'порвался':1/15
                ,'руснявая пидараха': 1/11
                ,'бубарех': 1/10
                ,'хуйня': 1/10
                ,'залупин': 1/13
                ,'хуйло': 1/12
            }
    ];

    Словарь слов-маркеров анона с /po для склейки крупных кусков кобенады и твердой мелкой психозы.

    Даже простейший скрипт, рандомно вставляющий данные фразы показывает весьма аутентичный результат.

    3.14159265, 05 Февраля 2020

    Комментарии (116)
  9. Lua / Говнокод #24440

    +1

    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
    c:\Program Files (x86)\Lua\5.1>lua.exe c:\temp\1.lua
    0.0012512588885159
    
    c:\Program Files (x86)\Lua\5.1>lua.exe c:\temp\1.lua
    0.0012512588885159
    
    c:\Program Files (x86)\Lua\5.1>lua.exe c:\temp\1.lua
    0.0012512588885159
    
    c:\Program Files (x86)\Lua\5.1>lua.exe c:\temp\1.lua
    0.0012512588885159
    
    c:\Program Files (x86)\Lua\5.1>type c:\temp\1.lua
    print(math.random() )

    Луа под виндой как-то отчаянно сосет хуй не умея настоящие random из Windows Crypto API.
    В результате вызов 150 раз программы дает один и тот же random. Его конечно можно math.randomseed(os.time()), но то так, бо time это даже не милисекунды а сеунды.

    Забавно что под никсами все зробит как треьба

    :1$ lua51 1.lua
    0.31260803123592
    :2$ lua51 1.lua
    0.13656691980388
    :3$ lua51 1.lua
    0.56430453367732


    думаю оно читает /dev/random

    Золотой хуй, что это такое? Или Сёма прав и прыщелуа не умеет в winapi?

    roskomgovno, 04 Июля 2018

    Комментарии (116)
  10. JavaScript / Говнокод #18996

    −3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    var api = angular.module('GithubApi', []);
    api.controller('GithubStatus', function ($scope, $http) {
        $http.get('/api.json')
            .success(function (response) { $scope.api = response; });
    });

    Пейсатели ж.скрипт фреймоврков не перестают радовать. Код несколько упрощен, но суть должна быть очевидна каждому: переменная api будет затерта как только она будет создана строкой типа "[object Object]" потому что в $scope есть поле с таким же значением.

    wvxvw, 09 Ноября 2015

    Комментарии (116)
  11. Си / Говнокод #16375

    +136

    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
    #include studio.h
    
    main()
    {
      uint16 final,num;
      printf(“enetr the unsigned integer 16bit number “);
      scanf(“%d”, &num);
      final= numbitset(num);
      printf(“%d”, final);
    }
    
    unit16 numbitset( unit16 x)
    {
      int i, j,result, total=0;
      uint16 no,modify
      for(i=1;i<=4;i++)
      {
        j=pow(10,i);
        no= (x%(j))>>(i-1)*4;
        if(no==0)
        {
          result=0;
        }
        else if(no==1)
        {
          result=1;
        }
        else if(no==2)
        {
          result=1;
        }
        else if(no==3)
        {
          result=2;
        }
       else
       {
          result = othernum(no/4)+othernum(no%4);	
        }
        total = total+result;
      }
    }
    
    uint16 othernum( uint16 y)
    {
      switch(y)
      {
        case 0:
          return(0);
          break;
      case 1:
          return(1);
         break;
      case 2:
        return(1);
        break;
       case 3:
          return(2);
          break;
       default:
        return;
        break;
      }
    }

    Посчитать количество значащиз битов в 16ти разрядном целом. Реальный тест на собеседовании дал такой вот результат. Угадайте откуда кандидат :)

    multilexa, 18 Июля 2014

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