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

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

    +26

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    void		releaseNext(int iID, int iPipeline, bool bForce = false);
    bool		releaseForced(int &iID, int &iPipeline);
    bool		releaseForced2(int &iID, int &Pipeline);
    bool		releaseForced3(int iID, int Pipeline);
    bool		releaseFinally(int iID, int iPipe);

    кусок public definitions класса

    guest, 15 Декабря 2008

    Комментарии (50)
  3. Python / Говнокод #29074

    0

    1. 1
    def neg(x): return int(bin(x)[2:].rjust(8, '0').replace('1','x').replace('0','1').replace('x','0'), 2)

    Операция "NEG"

    j123123, 16 Января 2025

    Комментарии (49)
  4. JavaScript / Говнокод #28915

    +1

    1. 1
    React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED

    ISO, 18 Февраля 2024

    Комментарии (49)
  5. Куча / Говнокод #28106

    +1

    1. 1
    Из-за вашей политоты Борманд ушёл.

    OCETuHCKuu_nemyx, 03 Апреля 2022

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

    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
    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
    def number_to_words(n):
        if n == 1:
            print('один')
            exit()
        elif n == 2:
            print('два')
            exit()
        elif n == 3:
            print('три')
            exit()
        elif n == 4:
            print('четыре')
            exit()
        elif n == 5:
            print('пять')
            exit()
        elif n == 6:
            print('шесть')
            exit()
        elif n == 7:
            print('семь')
            exit()
        elif n == 8:
            print('восемь')
            exit()
        elif n == 9:
            print('девять')
            exit()
        elif n == 10:
            print('десять')  
            exit()
        elif n == 11:
            print('одиннадцать')
            exit()
        elif n == 12:
            print('двенадцать')
            exit()
        elif n == 13:
            print('тринадцать')
            exit()
        elif n == 14:
            print('четырнадцать')
            exit()
        elif n == 15:
            print('пятнадцать')
            exit()
        elif n == 16:
            print('шестнадцать')
            exit()
        elif n == 17:
            print('семнадцать')
            exit()
        elif n == 18:
            print('восемнадцать')
            exit()
        elif n == 19:
            print('девятнадцать')
            exit()
        elif n == 20:
            print('двадцать')
            exit()
        elif n == 21:
            print('двадцать один')
            exit()
        elif n == 22:
            print('двадцать два')
            exit()
        elif n == 23:
            print('двадцать три')
            exit()
        elif n == 24:
            print('двадцать четыре')
            exit()
        elif n == 25:
            print('двадцать пять')
            exit()
        elif n == 26:
            print('двадцать шесть')
            exit()
        elif n == 27:
            print('двадцать семь')
            exit()
        elif n == 28:
            print('двадцать восемь')  
            exit()
        elif n == 29:
            print('двадцать девять')
            exit()
        elif n == 30:
            print('тридцать')
            exit()
        elif n == 31:
            print('тридцать один')
            exit()
        elif n == 32:
            print('тридцать два')
            exit()

    так до 99. Оригинал: https://www.cyberforum.ru/python-beginners/thread2390750.html
    P.S. exit-ы то зачем????

    makpif, 21 Января 2022

    Комментарии (49)
  7. JavaScript / Говнокод #27616

    +2

    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
    Steps to reproduce:
    
      var s = "a huge, huge, huge string...";
      s = s.substring(0, 5);
    
    Expected results: s takes five bytes of memory, plus some overhead.
    Actual results: s takes a huge, huge, huge amount of memory.
    Unfortunately, most String functions use substring() or no-ops internally: concatenating with empty string, trim(), slice(), match(), search(), replace() with no match, split(), substr(), substring(), toString(), trim(), valueOf().
    My workaround is:
    
    function unleakString(s) { return (' ' + s).substr(1); }
    
    But it's not satisfying, because it breaks an abstraction and forces me to think about memory allocation.

    https://bugs.chromium.org/p/v8/issues/detail?id=2869

    Status: Assigned (Open)
    Reported on: Sep 3, 2013

    3.14159265, 26 Августа 2021

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

    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
    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
    98. 98
    99. 99
    #Это калькулятор
    t=input("Введите колличество чисел (2 или 3): ")
    if t == '3':
    	one=float(input("Введите первое число: "))
    	two=float(input("Введите второе число: "))
    	three=float(input("Введите третье число: "))
    	n=input("Введите первый знак: ")
    	if n != '+' and n != '-' and n != '*' and n != '/' :
    		print("Вы написали что-то неправильно")
    	else:
    		m=input("Введите второй знак: ")
    		if m != '+' and m != '-' and m != '*' and m != '/' :
    			print("Вы написали что-то неправильно")
    		else:
    			if n == '+':
    				if m == '+':
    					rez=one+two+three
    					print(rez)
    				elif m == '-':
    					rez=one+two-three
    					print(rez)
    				elif m == '*':
    					rez=one+two*three
    					print(rez)
    				elif m == '/':
    					rez=one+two/three
    					print(rez)
    				else:
    					print("Вы написали что-то неправильно")
    			elif n == '-':
    				if m == '+':
    					rez=one-two+three
    					print(rez)
    				elif m == '-':
    					rez=one-two-three
    					print(rez)
    				elif m == '*':
    					rez=one-two*three
    					print(rez)
    				elif m == '/':
    					rez=one-two/three
    					print(rez)
    				else:
    					print("Вы написали что-то неправильно")
    			elif n == '*':
    				if m == '+':
    					rez=one*two+three
    					print(rez)
    				elif m == '-':
    					rez=one*two-three
    					print(rez)
    				elif m == '*':
    					rez=one*two*three
    					print(rez)
    				elif m == '/':
    					rez=one*two/three
    					print(rez)
    				else:
    					print("Вы написали что-то неправильно")
    			elif n == '/':
    				if m == '+':
    					rez=one/two+three
    					print(rez)
    				elif m == '-':
    					rez=one/two-three
    					print(rez)
    				elif m == '*':
    					rez=one/two*three
    					print(rez)
    				elif m == '/':
    					rez=one/two/three
    					print(rez)
    				else:
    					print("Вы написали что-то неправильно")
    			else:
    				print("Вы написали что-то неправильно")
    elif t == '2':
    	z=input("Введите знак: ")
    	if z != '+' and z != '-' and z != '*' and z != '/' :
    		print("Вы написали что-то неправильно")
    	else:
    		one=float(input("Введите первое число: "))
    		two=float(input("Введите второе число: "))
    		if z == '+':
    			rez=one+two
    			print(rez)
    		elif z == '-':
    			rez=one-two
    			print(rez)
    		elif z == '*':
    			rez=one*two
    			print(rez)
    		elif z == '/':
    			rez=one/two
    			print(rez)
    		else:
    			print("Вы написали что-то неправильно")
    else :
    	print("Вы написали что-то неправильно")

    Как можно сократить говнокод? Просто интересно... Спасибо)

    ilyaclover000, 08 Ноября 2020

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

    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
    final class Point {
        public final int x;
        public final int y;
    
        public Point(int x, int y) {
            this.x = x;
            this.y = y;
        }
    
        // state-based implementations of equals, hashCode, toString
        // nothing else
    
    }

    is "just" the data (x, y). Its representation is (x, y), its construction protocol accepts an (x, y) pair and stores it directly into the representation,
    it provides unmediated access to that representation, and derives the core Object methods directly from that representation.
    And in the middle, there are grey areas where we're going to have to draw a line.

    Other OO languages have explored compact syntactic forms for modeling data-oriented classes: case classes in Scala, data classes in Kotlin, and record classes in C#.
    These have in common that some or all of the state of a class can be described directly in the class header -- though they vary in their semantics
    (such as constraints on the mutability or accessibility of fields, extensibility of the class, and other restrictions.)

    Committing in the class declaration to at least part of the relationship between state and interface enables suitable defaults to be derived for many common members.
    All of these mechanisms (let's call them "data classes") seek to bring us closer to the goal of being able to define Point as something like:

    record Point(int x, int y) { }

    [u]https://openjdk.java.net/jeps/359
    https://cr.openjdk.java.net/~briangoetz/amber/datum.html[u]

    3.14159265, 19 Октября 2020

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

    +1

    1. 1
    2. 2
    3. 3
    bool isComputerOn() noexcept {
      return true;
    }

    Лицензия MIT. Пользуйтесь на здоровье

    Elvenfighter, 20 Августа 2020

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

    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
    <?php 
    	$bool1 = false;
    	$bool2 = true;
    	
    	$info = '';
    	
    	if ($bool1 || function () {
    		if ($bool2)
    		{
    			$info = 'Привет мир!';
    		}
    	})
    	{
    		echo 'Код выполнен';
    	}
    	
    	echo $info . "\n";
    
    ?>

    Еще бы работало:D

    A1mDev, 12 Июня 2020

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