1. Си / Говнокод #12653

    +135

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // где-то в коде нашлось
    PRIVATE IdxArray* idx_array_append_val_dyn(IdxArray* arr, PlmIndex idx)
    
    // private.h
    #ifdef PLM_TEST
    #define PRIVATE extern
    #else
    #define PRIVATE static
    #endif

    внезапно...

    Try, 26 Февраля 2013

    Комментарии (34)
  2. C# / Говнокод #12650

    +125

    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
    class OneAtATimePlease
      {
        private static object lok = new object();
    
        static void Main()
        {
          Dictionary<int, string> d = new Dictionary<int, string>();
          Thread t = new Thread(new ParameterizedThreadStart(Fill));
          Thread t2 = new Thread(new ParameterizedThreadStart(Fill));
          t.Start(d);
          t2.Start(d);
          t.Join();
          t2.Join();
          foreach (var i in d)
          {
            Console.WriteLine(i.Key + " " + i.Value);
          }
        }
    
        public static void Fill(object lo)
        {
          Dictionary<int, string> d = (Dictionary<int, string>)lo;
    
          for (int i = 0; i < 10; i++)
          {
            Random r = new Random(i*4);
            int v = r.Next(0, 10);
            if (!d.ContainsKey(v))
            {
              lock (lok)
              {
                d.Add(v, "Hello from thread: " + Thread.CurrentThread.ManagedThreadId);
              }
            }
          }
        }
      }

    taburetka, 25 Февраля 2013

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

    +19

    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
    std::vector<int> data;
    std::vector<int> indexes;
    
    // ...
    
    for (int i = 0; i < data.size(); ++i) {
    	if (data[i] == to_remove) {
    		indexes.push_back(i);
    	}
    }
    for (int i = 0; i < indexes.size(); ++i) {
    	data.erase(data.begin() + i);
    }

    "Эффективное" удаление элементов из вектора. Об <algorithm> человек не слышал...

    Cpp, 25 Февраля 2013

    Комментарии (24)
  4. Objective C / Говнокод #12648

    −110

    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
    - (void)shutdown {
        ...
        // shutdown routine
        ...
        [self retain];
        dispatch_async(_decodeQueue, ^{
            [self cleanup];
        });
    }
    
    - (void)cleanup {
        [self release];
    }

    Старый-добрый memory management.
    Между прочим, код из платной библиотеки...

    clockworkman, 25 Февраля 2013

    Комментарии (13)
  5. JavaScript / Говнокод #12647

    +164

    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
    var num = 3;
    var x1 = Math.floor(Math.random()*num + 1);
    var x2 = Math.floor(Math.random()*num + 1);
    var x3 = Math.floor(Math.random()*num + 1);
    var x4 = Math.floor(Math.random()*num + 1);
    var x5 = Math.floor(Math.random()*num + 1);
    var x6 = Math.floor(Math.random()*num + 1);
    var x7 = Math.floor(Math.random()*num + 1);
    var x8 = Math.floor(Math.random()*num + 1);
    var x9 = Math.floor(Math.random()*num + 1);
    var x10 = Math.floor(Math.random()*num + 1);
    var x11 = Math.floor(Math.random()*num + 1);
    var x12 = Math.floor(Math.random()*num + 1);
    var x13 = Math.floor(Math.random()*num + 1);
    var x14 = Math.floor(Math.random()*num + 1);
    var x15 = Math.floor(Math.random()*num + 1);
    var x16 = Math.floor(Math.random()*num + 1);
    
    
    var i = 0;
    
    while (true) {
    x1 = Math.floor(Math.random()*num + 1);
    x2 = Math.floor(Math.random()*num + 1);
    x3 = Math.floor(Math.random()*num + 1);
    x4 = Math.floor(Math.random()*num + 1);
    x5 = Math.floor(Math.random()*num + 1);
    x6 = Math.floor(Math.random()*num + 1);
    x7 = Math.floor(Math.random()*num + 1);
    x8 = Math.floor(Math.random()*num + 1);
    x9 = Math.floor(Math.random()*num + 1);
    x10 = Math.floor(Math.random()*num + 1);
    x11 = Math.floor(Math.random()*num + 1);
    x12 = Math.floor(Math.random()*num + 1);
    x13 = Math.floor(Math.random()*num + 1);
    x14 = Math.floor(Math.random()*num + 1);
    x15 = Math.floor(Math.random()*num + 1);
    x16 = Math.floor(Math.random()*num + 1);
    	if (x1 === x2){
    		if (x2 === x3) {
    			if(x4 === x5){
    				if (x5 === x6) {
    					if (x6 === x7){
    						if (x7 === x8){
    							if (x8 === x9){
    								if (x9 === x10){
    									if (x10 === x11){
    										if (x11 === x12){
    											if (x12 === x13){
    												if (x13 === x14){
    													if (x14 === x15){
    														if (x15 === x16){
    															if (x1 === x16){
    																document.write('<h3>ЧИСЛО x1 - ' + x1 + ' и x2 - ' + x2 + " x3 - " + x3 +  " x4 - " + x4 + " x5 - " + x5 + " x6 - " + x6 + " x7 - " + x7 + " x8 - " + x8 + " x9 - " + x9 + " x10 - " + x10 + " x11 - " + x11 + " x12 - " + x12 + " x13 - " + x13 + " x14 - " + x14 + " x15 - " + x15  + " x16 - " + x16 + "<b> i= </b> " + i);
    										break;
    															}
    														
    														}
    													}
    												}
    											}
    										}
    									
    									}
    								}
    							}
    						}
    					}
    				}
    			}
    		}
    
    	}else{
    		i++;
    		document.write('<b>x1:  </b>' + x1 + '   <b>  x2:  </b> ' + x2 + " x3 - " + x3 +  " x4 - " + x4 + " x5 - " + x5 + " x6 - " + x6 + " x7 - " + x7 + " x8 - " + x8 + " x9 - " + x9 + " x10 - " + x10 + " x11 - " + x11 + " x12 - " + x12 + " x13 - " + x13 + " x14 - " + x14 + " x15 - " + x15  + " x16 - " + x16 + "  - " + i + "<br>");}
    }

    Генерируем 16 чисел в диапазоне 1-3, условие такое, что они должны быть равными, пока они не равны выводим каждое значение числа, и вот что каждый раз в цикле (генерируем новые случайные числа, в этом же диапазоне)

    kuler, 25 Февраля 2013

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

    +93

    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
    begin
    if n=15 then
    begin
    a:=7200*56*99*12*13*14*15;
    end
    else
    begin
    if n=16 then
    begin
    a:=7200*56*99*12*13*14*15*16;
    end
    else
    begin
    if n=17 then
    begin
    a:=7200*56*99*12*13*14*15*16*17;
    end
    else
    begin
    if n=18 then
    begin
    a:=7200*56*99*12*13*14*15*16*17*18;
    end
    else
    begin
    if n=19 then
    begin
    a:=7200*56*99*12*13*14*15*16*17*18*19;
    end
    else
    begin
    if n=20 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19;
    end
    else
    begin
    if n=21 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21;
    end
    else
    begin
    if n=22 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22;
    end
    else
    begin
    if n=23 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23;
    end
    else
    begin
    if n=24 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24;
    end
    else
    begin
    if n=25 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24*25;
    end
    else
    begin
    if n=26 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24*25*26;
    end
    else
    begin
    if n=27 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24*25*26*27;
    end
    else
    begin
    if n=28 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24*25*26*27*28;
    end
    else
    begin
    if n=29 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24*25*26*27*28*29;
    end
    else
    begin
    if n=30 then
    begin
    a:=144000*56*99*12*13*14*15*16*17*18*19*21*22*23*24*25*26*27*28*29*30;
    end
    else
    begin
    if n=31 then
    begin

    crazy_horse, 25 Февраля 2013

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

    +146

    1. 1
    strtotime(date('Y-m-d H:i:s'))

    xscript, 25 Февраля 2013

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

    +146

    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
    function EchoError(num)
    {
    
      var errstr = '';
    
      switch(num)
      {
        case 1: errstr = 'А чего считать-то?'; break;
        case 2: errstr = 'Это что еще за непристойности?'; break;
        case 3: errstr = 'Слишком большие числа, сам считай...'; break;
        case 4: errstr = 'А самому на ноль поделить слабо?'; break;
        case 5: errstr = 'Ой! Кажется, я где-то ошибся...';break;
        case 6: errstr = 'Да эта функция в жизни подобных чисел не видела!';break;
        case 7: errstr = 'Я ЭТИ буквы не умею складывать, ты мне другие буквы дай!';break;
      }
    
      alert("Ошибка №" + num + ": " + errstr);
    
    }

    2004 год

    __proto__, 25 Февраля 2013

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

    −117

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Функция НайтиТовар(Наименование)
    	Запрос = Новый Запрос("ВЫБРАТЬ Ссылка, Наименование ИЗ Справочник.Номенклатура ГДЕ НЕ ПометкаУдаления");
    	Выборка = Запрос.Выполнить().Выбрать();
    	Пока Выборка.Следующий() Цикл
    		Если СокрЛП(ВРег(Выборка.Наименование))=ВРег(Наименование) Тогда
    			Возврат Выборка.Ссылка;
    		КонецЕсли;
    	КонецЦикла;
    КонецФункции

    и все это вызывается в цикле

    BlackMamba, 25 Февраля 2013

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

    +140

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    fixed (char* p = "A")
    {
        p[0] = 'B';
    }
    
    Console.WriteLine("A");

    Immutable strings

    Ccik, 24 Февраля 2013

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