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

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

    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
    function main()
    {
    	let a: [ name: string, age: number ];
    
    	a.name = "Test1";
    
    	print (a.name, " << end (should be value Test1)");
    
    	let b: [ name: string, age: number ] = [ "user", 10.0 ];
    
    	print (b.name, b.age);
    
    	let c: [ user: [ name: string, age: number ], type: number ] = [ [ "user2", 11.0 ], 1.0 ];
    
    	print (c.user.name, c.user.age, c.type);
    	print (c.user.name);
    
    	c.user.name = "Test2";
    
    	print (c.user.name, " << end (should be value Test2)");
    }

    Продолжаем будни говнокомпилятора. а ваш компилятор умеет делать проименнованные таплы (tuples)?

    ASD_77, 17 Мая 2021

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

    +2

    1. 1
    page < records.total_pages ? next_page_exist = true : next_page_exist = false

    очевидное должно быть очевидны

    AlexKlim, 29 Марта 2021

    Комментарии (89)
  4. Куча / Говнокод #26856

    −2

    1. 1
    2. 2
    3. 3
    Ещё раз о «лицензиях»
    
    https://sun1-95.userapi.com/LR_BeKxXR6XXDG2k-dpOCzUf63zRdc6491VvIg/1J2iS0o6d_Y.jpg

    Кому они нужны?
    Это имеет какую-то юридическую силу?
    Что будет, если нарушить? Пацаны не поймут?

    OCETuHCKuu_nemyx, 10 Августа 2020

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

    −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
    // https://godbolt.org/z/ZsXDti
    
    #include <boost/hana.hpp>
    #include <range/v3/view.hpp>
    #include <range/v3/experimental/view/shared.hpp>
    #include <iostream>
    
    using namespace ranges::views;
    using std::vector, boost::hana::_, ranges::concat_view, ranges::experimental::views::shared;
    
    
    vector<double> sort(vector<double> vec) {
      if(size(vec) <= 1) {
        return vec;
      } else {
        auto pivot = vec[size(vec) / 2];
        
        return concat_view(
          sort(vec | filter(_ < pivot)),
          vec | filter(_ == pivot),
          sort(vec | filter(_ > pivot))
        );
      }
    }
    
    int main() {
      std::cerr << (sort({30, 20, 50, 40}) | shared | all) << std::endl;
    }

    https://habr.com/ru/post/482318/#comment_21072122

    Царь набрасывает на хабр какое-то крестобустоговно, называя его красивым.

    j123123, 28 Декабря 2019

    Комментарии (89)
  6. Pascal / Говнокод #25789

    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
    inside:=false;
    tag:=uppercase(tagpure);
    spacep:=pos(' ',tag);
    if spacep=0 then tagname:=tag else tagname:=copy(tag,1,spacep-1);
    
    if (not inscript) and (tagname='A') then
    begin
    ParseTag(tagpure);
    //если флажок Ссылки или флажок Якоря включен
    if checkBox9.Checked or checkBox10.Checked then
    begin
    linktext:=Lg.GR(24);
    linktag:='HREF';
    link2text:=Lg.GR(25);
    link2tag:='NAME';
    needlink:=true;
    needdbr:=true;
    end;
    end;

    Вернулся в 2007 1997.
    s: h/465709

    gost, 01 Сентября 2019

    Комментарии (89)
  7. Куча / Говнокод #25761

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    # сие есть AWK
            format = $2
            sub(/-.+$/, "", format)
            sub(/^.+?:[ \t]?/, "")
            output_format[format] = $0

    Какая падла придумала эту функцию?

    petux, 10 Августа 2019

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

    +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
    function natRound() {
    
    	var out = []
    	    , fib = [0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233] // etc
    	    , _data = function() { // random values
    
    			var out = []
    				, count = Math.round( Math.random() * 100)
    			;
    
    			for(var i=0; i < count; i++ ) {
    				out.push( Math.random() * 100 ); // in km
    			}
    
    			return out.sort(function(a,b){ return a-b; });
    	    }()
    	    , roundTo = function (value) {
    			var i = fib.length;
    			while(i--) {
    				if ( value < fib[i] ) continue;
    				return i? i: value; // natural sorting
    			}
    	    }
    	;
    
    	for( var i=0; i<_data.length; i++ ) {
    		out.push( 'Value: [' + _data[i] + ']; Sort = [' + roundTo(_data[i]) + ']' );
    	}
    
    	return out;
    }

    Необходимо было учесть дискретность при сортировке расстояний в километрах.
    Например, в синтаксисе Elastic это выглядит так:

    "ranges" => [
    [ "to" => 1 ],
    [ "from" => 1, "to" => 3 ],
    [ "from" => 3, "to" => 5 ],
    [ "from" => 5],
    // etc
    ]

    Используя цепочку чисел Фибоначчи, как наиболее "человечески приятный" ряд, функция roundTo возвращает число для сортировки значений массива.

    bot, 04 Июля 2019

    Комментарии (89)
  9. Python / Говнокод #24367

    +1

    1. 1
    2. 2
    def __repr__(self) -> str:
            return f"<User{return ', inactive!' if not self.active else ''} #{self.id} ({self.username}/{self.email})>"

    Когда очень хочется использовать красивый f"{ormat}" для строки, но модель БД становится все сложнее...

    saber-nyan, 08 Июня 2018

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

    +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
    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
    namespace БиблиотекаКлассов
    {
         public class Картинки
         {
              public Vector2 Расположение_ЖивойКартинки;
              public Vector2 Расположение_НеЖивойКартинки;
              public Texture2D Объект_ЖиваяКартинка;
              public Texture2D Объект_НеЖиваяКартинка;
    
              public class ЖивыеКартинки : Картинки
              {
    
                   private Point Переменная_Номер_Текущего_Кадра;
    
                   private int Переменная_Скорость_ЖивыхКартинок;
                   private double Переменная_ВремяРаботыКадра;
                   private double Переменная_ВремяОтНачалаРаботыВсехКадров;
                   private Rectangle Объект_Кадр;
                   private float Переменная_Поворот_ЖивойКартинки;
                   private Vector2 Переменная_Центр_Поворота;
                   private int Переменная_Количество_Строк;
                   private int Переменная_Количество_Столбцов;
                   public int Переменная_Ширина_Кадра_ЖивыхКартинок;
                   public int Переменная_Высота_Кадра_ЖивыхКартинок;
    
                   
                 
                   // Метод создания живых картинок с параметрами
                   public ЖивыеКартинки(int ЗАДАТЬ_Количество_Строк, int ЗАДАТЬ_Количество_Столбцов, double ЗАДАТЬВремяРаботыКадраВСекунду, int ЗАДАТЬ_СкоростьКартинок)
                        {
                        Переменная_Количество_Строк = ЗАДАТЬ_Количество_Строк;
                        Переменная_Количество_Столбцов = ЗАДАТЬ_Количество_Столбцов;
                        Переменная_ВремяРаботыКадра = (float)1 / ЗАДАТЬВремяРаботыКадраВСекунду;
                        Переменная_ВремяОтНачалаРаботыВсехКадров = 0;
                        Переменная_Номер_Текущего_Кадра = new Point(0, 0);
                        Переменная_Скорость_ЖивыхКартинок = ЗАДАТЬ_СкоростьКартинок;
                        }
    
                   public void Метод_ПереходПоКадрам(double ПройденноеВремя)
                        {
    
                        Переменная_ВремяОтНачалаРаботыВсехКадров += ПройденноеВремя;
    
                        if (Переменная_ВремяОтНачалаРаботыВсехКадров > Переменная_ВремяРаботыКадра)
                        {
    
                                  ++Переменная_Номер_Текущего_Кадра.X;
                                  if (Переменная_Номер_Текущего_Кадра.X >= Переменная_Количество_Столбцов)
                                  {
                                  Переменная_Номер_Текущего_Кадра.X = 0;
                                  ++Переменная_Номер_Текущего_Кадра.Y;
    
                                  if (Переменная_Номер_Текущего_Кадра.Y >= Переменная_Количество_Строк)
                                       { 
                                            Переменная_Номер_Текущего_Кадра.Y = 0;
                                       }
                                  }
    
                             Переменная_ВремяОтНачалаРаботыВсехКадров -= Переменная_ВремяРаботыКадра;
                             }
                        }
    
    
                   public void Метод_КОМП_ДвижениеЖивыхКартинок()
                   {
                   }
    
    
                   public void Метод_ЗАГРУЗКА_ЖивойКартинки(ContentManager Переменная_ContentManager, String Переменная_ДляХраненияПутиКартинки)
                        {
                        Объект_ЖиваяКартинка = Переменная_ContentManager.Load<Texture2D>(Переменная_ДляХраненияПутиКартинки);
                        }
    
                   // Рисование Картинки
                   public void Метод_РИСОВАНИЕ_ЖивойКартинки(SpriteBatch Переменная_SpriteBatch, int x)   // x - Помогает задать центр поворота картинки
                        {
                             Переменная_Ширина_Кадра_ЖивыхКартинок = Объект_ЖиваяКартинка.Width / Переменная_Количество_Столбцов;
                             Переменная_Высота_Кадра_ЖивыхКартинок = Объект_ЖиваяКартинка.Height / Переменная_Количество_Строк;
                             if (x != 0)
                             {
                                  Переменная_Центр_Поворота = Vector2.Zero;
                             }
                             if (x == 0)
                             {
                                  Переменная_Центр_Поворота = new Vector2(Переменная_Ширина_Кадра_ЖивыхКартинок / 2, Переменная_Высота_Кадра_ЖивыхКартинок / 2);
                             }
    
                             Объект_Кадр = new Rectangle(Переменная_Номер_Текущего_Кадра.X * Переменная_Ширина_Кадра_ЖивыхКартинок, Переменная_Номер_Текущего_Кадра.Y * Переменная_Высота_Кадра_ЖивыхКартинок, Переменная_Ширина_Кадра_ЖивыхКартинок, Переменная_Высота_Кадра_ЖивыхКартинок);
                             Переменная_SpriteBatch.Draw(Объект_ЖиваяКартинка, Расположение_ЖивойКартинки, Объект_Кадр, Color.White, Переменная_Поворот_ЖивойКартинки, Переменная_Центр_Поворота, 1, SpriteEffects.None, 0);
                        }
              }
    
    
              public class НеЖивыеКартинки : Картинки
              {
                   private Vector2 Переменная_Центр_Поворота;
       //            private Rectangle Объект_Кадр;
                   public int Переменная_Ширина_НеЖивыхКартинок;

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

    Vasia, 11 Апреля 2016

    Комментарии (89)
  11. C++ / Говнокод #19061

    +4

    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
    typedef std::map<std::string, WORD> Values;
    
    struct Less {
    	bool operator()(Values::value_type const& left
    	, Values::value_type const& right) const {
    	   if (right.second == TEMPERATURE_UNKNOWN 
    		  || left.second == TEMPERATURE_UNKNOWN) {
    			 return false;
    	   }
    	   short const signed_left = *reinterpret_cast<short const*>(&left.second);
    	   short const signed_right = *reinterpret_cast<short const*>(&right.second);
    	   bool const result = signed_left < signed_right;
    	   return result;
    	}
    };

    Строки 10 и 11.
    20+ опыта в С++ у чувачка.

    blackhearted, 21 Ноября 2015

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