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

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

    +121

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    HAI
    CAN HAS STDIO?
    PLZ OPEN FILE "LOLCATS.TXT"?
    	AWSUM THX
    		VISIBLE FILE
    	O NOES
    		INVISIBLE "ERROR!"
    KTHXBYE

    Взято с http://lolcode.com/home : "Programming the LOL way. All LOLCats, LOL, ALL CAPS."

    PLZ = try
    AWSUM THX = ok branch
    O NOES = catch(...)
    VISIBLE = fprintf(stdout,...)
    INVISIBLE = fprintf(stderr,...)

    Dummy00001, 15 Июня 2010

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

    −180.6

    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
    package org.casalib.util {
        
        /**
            Utilities for constructing and working with Classes.
            
            @author Aaron Clinger
            @version 02/13/10
        */
        public class ClassUtil {
            
            /**
                Dynamically constructs a Class.
                
                @param type: The Class to create.
                @param arguments: Up to ten arguments to the constructor.
                @return Returns the dynamically created instance of the Class specified by <code>type</code> parameter.
                @throws Error if you pass more arguments than this method accepts (accepts ten or less).
                @example
                    <code>
                        var bData:* = ClassUtil.construct(BitmapData, 200, 200);
                        
                        trace(bData is BitmapData, bData.width);
                    </code>
            */
            public static function construct(type:Class, ...arguments):* {
                if (arguments.length > 10)
                    throw new Error('You have passed more arguments than the "construct" method accepts (accepts ten or less).');
                
                switch (arguments.length) {
                        case 0 :
                            return new type();
                        case 1 :
                            return new type(arguments[0]);
                        case 2 :
                            return new type(arguments[0], arguments[1]);
                        case 3 :
                            return new type(arguments[0], arguments[1], arguments[2]);
                        case 4 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3]);
                        case 5 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4]);
                        case 6 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
                        case 7 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6]);
                        case 8 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7]);
                        case 9 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7], arguments[8]);
                        case 10 :
                            return new type(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7], arguments[8], arguments[9]);
                }
            }
        }
    }

    Lavir_the_Whiolet, 19 Апреля 2010

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

    +140.2

    1. 1
    if (port.id == {{ port.id }}) { selected = ' selected="selected"' }

    генерим аяксовым жабоскриптом option-ы в шаблоне.

    guest, 14 Апреля 2009

    Комментарии (50)
  5. PHP / Говнокод #399

    +27

    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
    <?php
    function chrs($poc)
    {
      return base64_encode($poc[1]);  
    }
    
    function callback($sel,$find, $to,$str){
    switch($sel) { 
    case 1:
    return  str_ireplace($find,$to,$str) ; 
    break;
    case 2:
    return substr($str,$find,$to) ;
    break;
    case 3:
    return preg_replace($find,$to,$str) ;
    break;
    case 4:
    return preg_replace_callback($find,$to,$str) ;
    break;
                                             
     }
    }
      echo callback(1,'you','fuck', 'You my pet').'<br/>';;
      echo callback(2,'0','5', 'You my pet').'<br/>'; 
      echo callback(4,'/(\S)/s','chrs', 'You my pet pet').'<br/>';
    ?>

    Code

    guest, 15 Января 2009

    Комментарии (50)
  6. 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)
  7. JavaScript / Говнокод #28915

    +1

    1. 1
    React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED

    ISO, 18 Февраля 2024

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

    +1

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

    OCETuHCKuu_nemyx, 03 Апреля 2022

    Комментарии (49)
  9. 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)
  10. 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)
  11. 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)