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

    В номинации:
    За время:
  2. Куча / Говнокод #27353

    +1

    1. 1
    Питушня #15

    #1: https://govnokod.ru/26692 https://govnokod.xyz/_26692
    #2: https://govnokod.ru/26891 https://govnokod.xyz/_26891
    #3: https://govnokod.ru/26893 https://govnokod.xyz/_26893
    #4: https://govnokod.ru/26935 https://govnokod.xyz/_26935
    #5: (vanished) https://govnokod.xyz/_26954
    #6: (vanished) https://govnokod.xyz/_26956
    #7: https://govnokod.ru/26964 https://govnokod.xyz/_26964
    #8: https://govnokod.ru/26966 https://govnokod.xyz/_26966
    #9: https://govnokod.ru/27017 https://govnokod.xyz/_27017
    #10: https://govnokod.ru/27045 https://govnokod.xyz/_27045
    #11: https://govnokod.ru/27058 https://govnokod.xyz/_27058
    #12: https://govnokod.ru/27182 https://govnokod.xyz/_27182
    #13: https://govnokod.ru/27260 https://govnokod.xyz/_27260
    #14: https://govnokod.ru/27343 https://govnokod.xyz/_27343

    nepeKamHblu_nemyx, 11 Апреля 2021

    Комментарии (2532)
  3. Куча / Говнокод #27352

    +1

    1. 1
    11 апреля - всемирный день анимешника

    Всех поздравляем!!!

    OCETuHCKuu_nemyx, 11 Апреля 2021

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

    +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
    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
    // https://govnokod.ru/27340#comment621647
    
    #include <iostream>
    #include <cstdlib>
    
    #define SPLICE(a,b) SPLICE_1(a,b)
    #define SPLICE_1(a,b) SPLICE_2(a,b)
    #define SPLICE_2(a,b) a##b
    
    
    #define PP_ARG_N( \
              _1,  _2,  _3,  _4,  _5,  _6,  _7,  _8,  _9, _10, \
             _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, \
             _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, \
             _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, \
             _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, \
             _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, \
             _61, _62, _63, N, ...) N
    
    /* Note 63 is removed */
    #define PP_RSEQ_N()                                        \
             62, 61, 60,                                       \
             59, 58, 57, 56, 55, 54, 53, 52, 51, 50,           \
             49, 48, 47, 46, 45, 44, 43, 42, 41, 40,           \
             39, 38, 37, 36, 35, 34, 33, 32, 31, 30,           \
             29, 28, 27, 26, 25, 24, 23, 22, 21, 20,           \
             19, 18, 17, 16, 15, 14, 13, 12, 11, 10,           \
              9,  8,  7,  6,  5,  4,  3,  2,  1,  0
    
    #define PP_NARG_(...)    PP_ARG_N(__VA_ARGS__)    
    
    /* Note dummy first argument _ and ##__VA_ARGS__ instead of __VA_ARGS__ */
    // note: using __VA_OPT__ shit instead ##__VA_ARGS__
    #define PP_NARG(...)     PP_NARG_(_ __VA_OPT__(,) __VA_ARGS__, PP_RSEQ_N())
    
    #define MK_VAR_T(type, name) \
    typeof(type) name
    
    #define TYPE_ADD_0()
    
    #define TYPE_ADD_1(VAR) \
      MK_VAR_T VAR;
    #define TYPE_ADD_2(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_1(__VA_ARGS__)
    #define TYPE_ADD_3(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_2(__VA_ARGS__)
    #define TYPE_ADD_4(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_3(__VA_ARGS__)
    #define TYPE_ADD_5(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_4(__VA_ARGS__)
    #define TYPE_ADD_6(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_5(__VA_ARGS__)
    #define TYPE_ADD_7(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_6(__VA_ARGS__)
    #define TYPE_ADD_8(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_7(__VA_ARGS__)
    #define TYPE_ADD_9(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_8(__VA_ARGS__)
    #define TYPE_ADD_10(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_9(__VA_ARGS__)
    #define TYPE_ADD_11(VAR, ...) \
      MK_VAR_T VAR; TYPE_ADD_10(__VA_ARGS__)
    
    
    #define TYPE_ADD_(N, ...) \
      SPLICE(TYPE_ADD_, N)(__VA_ARGS__)
    
    #define TYPE_ADD(...) \
      TYPE_ADD_(PP_NARG(__VA_ARGS__), __VA_ARGS__)
    
    #define REM_BRACKET(...) __VA_ARGS__
    
    #define LAMBDA(name, vars, code) \
    struct name {TYPE_ADD vars void operator()() const REM_BRACKET code}
    
    int main()
    {
      LAMBDA
      (
        some_type_name,
        ((int, a), (float, b), (double, c)),
        ({
          std::cout << "Hello, world! " << a << " " << b << " " << c << std::endl;
        })
      );
      
      auto lambda = some_type_name(1, 3.14f, 0.25);
      lambda();
    }

    Вот вам говнолямбда на препроцессоре.

    j123123, 11 Апреля 2021

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

    +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
    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
    using System;
    
    namespace MainNamespace
    {
        class MainClass
        {
            static string str, sep;
            static void Sep()
            {
                int k = 0;
                while (k < str.Length * 2 - 5)
                {
                    if (sep.Length * (k + 1) > str.Length * 2 - 5)
                        break;
                    Console.Write(sep);
                    k++;
                }
                for (int l = 0; l < ((str.Length * 2 - 5) - (k * sep.Length)) ; l++)
                    Console.Write(sep[l]);
            }
            static void Main(string[] args)
            {
                Console.Write("str: ");
                str = Console.ReadLine();
                Console.Write("sep: ");
                sep = Console.ReadLine();
                for (int i = 0; i < str.Length-1; i++)
                    Console.Write(str[i] + " ");
                Console.Write(str[str.Length-1] + "\n\n");
                for (int j = 0; j < str.Length - 2; j++)
                {
                    Console.Write(str[j + 1] + " ");
                    Sep();
                    Console.WriteLine(" " + str[str.Length - j - 2]);
                    Console.Write("  ");
                    if(j < str.Length - 3)
                    {
                        Sep();
                        Console.WriteLine("  ");
                        continue;
                    }
                    Console.WriteLine();
                }
                for (int m = str.Length-1; m >= 1; m--)
                    Console.Write(str[m] + " ");
                Console.WriteLine(str[0]);
                Console.ReadKey();
            }
        }
    }

    Переписал код http://govnokod.ru/27324 на Шарп с небольшими улучшениями.

    BelCodeMonkey, 10 Апреля 2021

    Комментарии (2)
  6. Си / Говнокод #27345

    +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
    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
    94. 94
    95. 95
    96. 96
    97. 97
    #include <stdio.h>
    #include <stdlib.h>
    
    #define SPLICE(a,b) SPLICE_1(a,b)
    #define SPLICE_1(a,b) SPLICE_2(a,b)
    #define SPLICE_2(a,b) a##b
    
    
    #define PP_ARG_N( \
              _1,  _2,  _3,  _4,  _5,  _6,  _7,  _8,  _9, _10, \
             _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, \
             _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, \
             _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, \
             _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, \
             _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, \
             _61, _62, _63, N, ...) N
    
    /* Note 63 is removed */
    #define PP_RSEQ_N()                                        \
             62, 61, 60,                                       \
             59, 58, 57, 56, 55, 54, 53, 52, 51, 50,           \
             49, 48, 47, 46, 45, 44, 43, 42, 41, 40,           \
             39, 38, 37, 36, 35, 34, 33, 32, 31, 30,           \
             29, 28, 27, 26, 25, 24, 23, 22, 21, 20,           \
             19, 18, 17, 16, 15, 14, 13, 12, 11, 10,           \
              9,  8,  7,  6,  5,  4,  3,  2,  1,  0
    
    #define PP_NARG_(...)    PP_ARG_N(__VA_ARGS__)    
    
    /* Note dummy first argument _ and ##__VA_ARGS__ instead of __VA_ARGS__ */
    #define PP_NARG(...)     PP_NARG_(_, ##__VA_ARGS__, PP_RSEQ_N())
    
    #define FIND_NONNULL_1(RES) \
      ((RES = (char *)(NULL)))
    
    #define FIND_NONNULL_2(RES, VAR) \
      ((RES = (char *)(VAR)))
    
    #define FIND_NONNULL_3(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_2(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_4(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_3(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_5(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_4(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_6(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_5(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_7(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_6(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_8(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_7(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_9(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_8(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_10(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_9(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_11(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_10(RES,__VA_ARGS__))
    
    #define FIND_NONNULL_12(RES, VAR, ...) \
      (((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_11(RES,__VA_ARGS__))
    
    // etc ...
    
    #define FIND_NONNULLS_(N, ...) \
      SPLICE(FIND_NONNULL_, N)(__VA_ARGS__)
    
    #define FIND_NONNULLS(...) \
    ({ \
      char *FIND_NONNULLS; \
      FIND_NONNULLS_(PP_NARG(FIND_NONNULLS, __VA_ARGS__), FIND_NONNULLS, __VA_ARGS__); \
      FIND_NONNULLS; \
    })
    
    char *side_effect_null(void)
    {
      printf("!!null!!\n");
      return NULL;
    }
    
    char *side_effect_test(void)
    {
      printf("!!test!!\n");
      return "test";
    }
    
    int main(void)
    {
      printf( "result:%s\n", FIND_NONNULLS(0,side_effect_null(),0,side_effect_test(),0,0,side_effect_test(),"govno", side_effect_test()) );
      return EXIT_SUCCESS;
    }

    Это типа как short-circuit evaluation чтоб по цепочке хрень возвращающую строку вызывать, и там те функции хуйпойми сколько аргументов могут принимать (но там может быть константа, тогда естественно нихрена не надо вызывать) пока оно не вернет не-NULL. Как только вернуло не-NULL то вернуть это и дальше ничего не вызывать, а то там сайд эффекты всякие ненужные будут. А если не-NULL так и не нашло, вернуть NULL

    j123123, 09 Апреля 2021

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

    +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
    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
    void printParser(const wchar_t *fileName, const wchar_t *str, boolean showLineCharPos)
    {
        ts::Parser parser;
        auto sourceFile = parser.parseSourceFile(fileName, str, ScriptTarget::Latest);
    
        ts::FuncT<> visitNode;
        ts::ArrayFuncT<> visitArray;
    
        auto intent = 0;
    
        visitNode = [&](ts::Node child) -> ts::Node {
    
            for (auto i = 0; i < intent; i++)
            {
                std::cout << "\t";
            }
    
            std::cout << "Node: " << wtoc(parser.syntaxKindString(child).c_str()) << " @ [ " << child->pos << " - " << child->_end << " ]" << std::endl;
    
            intent++;
            ts::forEachChild(child, visitNode, visitArray);    
            intent--;
    
            return undefined;
        };
    
        visitArray = [&](ts::NodeArray<ts::Node> array) -> ts::Node {
            for (auto node : array)
            {
                visitNode(node);
            }
    
            return undefined;
        };
    
        auto result = ts::forEachChild(sourceFile.as<ts::Node>(), visitNode, visitArray);
    }

    спортировал TypeScript парсер в C++ и ахренел от обьема работы :)

    ASD_77, 06 Апреля 2021

    Комментарии (188)
  8. Python / Говнокод #27339

    +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
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    def ForQueryInAddr(query, addr):
    	global listed, primalsource
    	print("Searcing in: "+addr)
    	html = requests.get(addr,proxies=proxies).text
    	if (query.lower() in html.lower()):
    		print("==============================================")
    		print("Query found in: "+addr)
    		print("==============================================")
    	if ("<html>" in html or "<head>" in html):
    		data = PyQuery(html)
    		links = data('a')
    		for link in links:
    			ahref = link.attrib['href']
    			#print("Found: "+ahref)
    			if (ahref not in listed):
    				if (ahref[0].lower() == "h"):
    					if (primalsource in ahref):
    						if (ahref[-3:].lower() not in filetypes and ahref[-4:].lower() not in filetypes and ahref[-5:].lower() not in filetypes):
    							listed.append(ahref)
    							ForQueryInAddr(query, ahref)

    https://github.com/Dev1lroot/OnionSearch/blob/master/main.py

    PolinaAksenova, 06 Апреля 2021

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

    +1

    1. 1
    С днём математика вас, питухи!

    OCETuHCKuu_nemyx, 01 Апреля 2021

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

    +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
    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
    // если пользователь авторизован
    if($user->get('id')) { 
        $_SESSION['city-select'] = '';
        // если пользователь авторизован - определяем город
        $profile = $user->getOne('Profile');
        if ($profile) {
            $city = $profile->get('city');
        }
        
        // проходим все города и ищем подходящий
        $cities = $modx->runSnippet('pdoResources', array(
            'parents' => 205,
            'limit'   => 0,
            'includeTVs' => 'setCityForHome',
            'where'   => '{ "template" : "25" }',
            'tpl'     => '@CODE:{"id":"[[+id]]","city":"[[+tv.setCityForHome]]"}',
            'outputSeparator' => ','
        ));
        $redirectTo = 0;
        if($cities) { 
            $cities = $modx->fromJson('['.$cities.']');
            foreach( $cities as $c ) {
                if($c['city'] == $city) {
                    $redirectTo = $c['id'];
                    break;
                }
            }    
        }
    } else {
        // если не авторизован - проверяем сессию
        
        $session = $_SESSION['city-select'];
        
        // если сессия пустая - проверяем, на какой странице находимся
        // если страница города и пустая сессия - записываем в сессию
        if($modx->resource->get('template') == 25) {
            $_SESSION['city-select'] = $modx->resource->get('pagetitle');
            $city = $modx->resource->get('pagetitle');
        } else {
            $city = (!empty($_SESSION['city-select']))? $_SESSION['city-select'] : $city;
        }
    }

    Сумрачный гений, сука. Строки 11-28 особенно примечательны.

    CatScratchFever, 31 Марта 2021

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

    +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
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    program square;
    
    var sep, input: string;
      i, j, n, m : integer;
      
    
    begin
      write('sep:');
      readln(sep);
      
      write('str:');
      readln(input);
      
      for i:=1 to length(input) do write(input[i], ' ');
      writeln();
      for i:=2 to length(input)-1 do begin
        write(input[i]);
        for j:=1 to length(input)*2-3 do write (sep);
        writeln(input[length(input) - i + 1]);
      end;
      for i:=0 to length(input)-1 do 
        write(input[length(input)-i], ' ');
    end.

    Написала на скучной лекции программку на телефоне, чтобы распечатывать

    Х У Й
    У У
    Й У Х


    и прочие интересности UwU

    Пользуйтесь на здоровье, лицензия GNU GPL V3!

    KoWe4Ka_l7porpaMMep, 28 Марта 2021

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