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

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    std::string ScriptInfo::GetDebugInfo() const
    {
        char sz[256];
        sprintf(sz, "%s ('%s' script id: %u)", GetScriptCommandName(command).c_str(), GetScriptsTableNameByType(type).c_str(), id);
        return std::string(sz);
    }

    Может, не совсем говнокод, но меня от подобного коробит.

    Oops, 17 Октября 2010

    Комментарии (15)
  3. PHP / Говнокод #4358

    +159

    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
    // Функция для подключения к БД
    
    // *** параметры коннекта ***
    ErrorsOff();
    $this->DbAccess = @mysql_connect($this->Server, $this->User, $this->Password);
    ErrorsOn();
    if($this->DbAccess){
    	$this->Connected = true;
    	@mysql_query("set character_set_client='cp1251'");
    	@mysql_query("set character_set_results='cp1251'");
    	@mysql_query("set collation_connection='cp1251_general_ci'");
    	$this->Version = mysql_get_server_info();
    	if($dbname != "" && @mysql_select_db($dbname, $this->DbAccess)){
    		// *** отмечаем текущую базу ***
    	}
    }else{
    	$this->Error('Не удалось подключиться к серверу!');
    	$this->MySQLError();
    	return false;
    }
    $this->Good();
    return true;

    Мартин, 12 Октября 2010

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

    +164

    1. 1
    2. 2
    #define MERGE(X,Y) X##Y
    typedef unsigned MERGE(ch,ar)	byte;

    sermp, 11 Октября 2010

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

    +161

    1. 1
    2. 2
    if (isset($_GET['a'])) $b = 1;
    if (!isset($_GET['a'])) $b = 0;

    mulder, 10 Октября 2010

    Комментарии (15)
  6. C# / Говнокод #4320

    +133

    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
    public bool CheckPath(string path)
    {
        int n;
    
        n = 0;
        //Проверяем наличие нужных папок;
        if (Directory.Exists(path + "SCLAD"))
        {
            n += 1;
        }
        if (Directory.Exists(path + "REAL"))
        {
            n += 1;
        }
        if (Directory.Exists(path + "DOSTAVKA"))
        {
            n += 1;
        }
        //Проверяем наличие нужных файлов
        if (File.Exists(path + "analit.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "partner.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "SCLAD\\mdoc.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "SCLAD\\mdoc.fpt"))
        {
            n += 1;
        }
        if (File.Exists(path + "SCLAD\\mdocm.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "SCLAD\\mgrup.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "SCLAD\\mlabel.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "SCLAD\\mlabel.fpt"))
        {
            n += 1;
        }
        if (File.Exists(path + "REAL\\rbookm.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "REAL\\rbook.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "REAL\\rbook.fpt"))
        {
            n += 1;
        }
        if (File.Exists(path + "DOSTAVKA\\avt.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "DOSTAVKA\\avtm.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "DOSTAVKA\\avtm.fpt"))
        {
            n += 1;
        }
        if (File.Exists(path + "DOSTAVKA\\cargo.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "DOSTAVKA\\cargom.dbf"))
        {
            n += 1;
        }
        if (File.Exists(path + "DOSTAVKA\\zamena.dbf"))
        {
            n += 1;
        }
    
        //Если указанная папка содержит все, что нужно
        if (n == 20)
        {
            return true;
        }
    
        return false;
    }

    eee_qqq, 09 Октября 2010

    Комментарии (15)
  7. Python / Говнокод #4317

    −94

    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
    # -*- coding: utf-8 -*-
    
    # На входе: не пустой b-массив
    # На выходе: словарь из 1-ого элемента {самый часто встречающийся элемент:количество}
    
    # 1. Сначала составляем словарь, потом ищем максимум и возвращаем
    def Freq1(b):
      assert len(b) > 0
      d = {}
      for x in b: # Пробегаем в цикле исходный массив
        d[x] = d[x] + 1 if d.has_key(x) else 1 # Если ключ уже есть, прибавляем 1, если нет, записываем 1
      v = max(d, key=d.get) # v ключ из словаря соответствующий максимальному значению
      return {v:d[v]} # Возвращаем ответ
    
    # 2. Ищем максимум прямо при составлении словаря
    def Freq2(b):
      d = {}
      m, i = 0, 0 # Максимальная частота и индекс в словаре
      for x in b: # Пробегаем в цикле исходный массив
        d[x] = d[x] + 1 if d.has_key(x) else 1 # Если ключ уже есть, прибавляем 1, если нет, записываем 1
        if d[x] > m:
          m, i = d[x], x # Запоминаем максимум и его индекс
      return {i:m}
    
    # 3. Без использования словаря (сложность квадратичная - "тупой метод")
    def Freq3(b):
      m, i = 0, 0 # Максимальная частота и соответствующее ему значение
      for x in b:
        c = b.count(x) # Сколько раз встречается x в массиве b?
        if c > m:
          m, i = c, x
      return {i:m}
    
    # Проверка (примитивный unit-тест)
    def Check(inData, expected):
      assert Freq1(inData) == expected
      assert Freq2(inData) == expected
      assert Freq3(inData) == expected
    
    Check(["banana", "banana", "apple", "banana", "banana", "apple", "onion"], {'banana': 4})
    Check([2, 3, 9, 3, 6, 6], {3: 2})
    Check([True, True, True, False, False, True], {True: 4})

    Самый часто встречающийся элемент в массиве (3 способа).
    Везде сплошной говнокод. Как ПРАВИЛЬНО найти самый часто встречающийся элемент в массиве?
    Наверное, можно ещё отсортировать массив и пробежать по нему храня текущий элемент и количество и обновляя соответствующие переменные?

    denis, 09 Октября 2010

    Комментарии (15)
  8. PHP / Говнокод #4276

    +155

    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
    $image = imageCreateFromJpeg("test666.jpg");
    
    $width = imageSX($image);
    $height = imageSY($image);
    
    $colorsR = array();
    $colorsG = array();
    $colorsB = array();
    
    for ($i = 0; $i < $width; $i++) {
    	for ($j = 0; $j < $height; $j++) {
    		
    		$color = imageColorAt($image, $i, $j);
    		list($r, $g, $b) = array_values(imageColorsForIndex($image, $color));
    		
    		if ($r != "255" && $g != "255" && $b != "255") {
    			array_push($colorsR, $r);
    			array_push($colorsG, $g);
    			array_push($colorsB, $b);
    		}
    		
    	}
    }
    
    $middleR = base_convert(round(array_sum($colorsR) / count($colorsR)), 10, 16);
    $middleG = base_convert(round(array_sum($colorsG) / count($colorsG)), 10, 16);
    $middleB = base_convert(round(array_sum($colorsB) / count($colorsB)), 10, 16);
    
    
    echo "<h1>".$middleR.$middleG.$middleB."</h1>"

    Только что "родил": нахождение среднего цвета на картинке для собственных нужд. Поскольку пхп я особо не знал никогда, делал "влом".
    Претендует ли это на звание говнокода?

    Cr@ZyBoY, 17 Сентября 2010

    Комментарии (15)
  9. SQL / Говнокод #4239

    −176

    1. 1
    SELECT DISTINCT(sid) FROM

    sid - уникальное значение(PK)

    ferry-very-good, 13 Сентября 2010

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

    +166

    1. 1
    $need	= explode(',', 'name,phone');

    Оригинальный способ создания массивов

    netrain, 07 Сентября 2010

    Комментарии (15)
  11. Куча / Говнокод #4165

    +126

    1. 1
    2. 2
    3. 3
    4. 4
    <div id="search"><form action="http://youex.ru/search" method="post"><button name="send" type="submit" ><img src="/skins/default/design/img/img_space.gif" alt=""/></button><input name="type_send"value="Поиск......................................................................." onfocus="if (this.value=='Поиск.......................................................................') this.value='';" onblur="if (this.value==''){this.value='Поиск.......................................................................'}"/></form></div>
    
    
    <!--/* взято с сайта  http://youex.ru/  */-->

    http://govnokod.ru/4160 - смотри...
    уж больно показалось что аффтор кода уснул...

    istem, 03 Сентября 2010

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