1. C++ / Говнокод #18815

    +9

    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
    int turn = m_mapObject->getTurnSpeed();
    //НЕ НАДО ТУТ ОПТИМИЗИРОВАТЬ /= 45 !!!!
    if (turn != 0) {
        if (turn > 0) {
        //                    qDebug() << "Turn plus";
            turn /= 45;
            if (turn < 4) turn = 4;
            if (turn > 8) turn = 8;
        } else {
        //                    qDebug() << "Turn minus";
            turn /= 45;
            if (turn > -4) turn = -4;
            if (turn < -8) turn = -8;
        }
        paint.drawLine(QPoint(0,-speed),QPoint(turn,-speed));
    }

    Вы б знали, как руки чешутся...

    Antervis, 05 Октября 2015

    Комментарии (36)
  2. Pascal / Говнокод #18814

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    case ((((parametr[3, 1] - parametr[1, 1]) / parametr[4, 2] = (parametr[3, 2] - parametr[1, 2]) / parametr[4, 2]) and ((parametr[3, 2] - parametr[1, 2]) / parametr[4, 2] = (parametr[3, 3] - parametr[1, 3]) / parametr[4, 3])) xor           
                ((parametr[4, 1] = 0) and (parametr[1, 1] = parametr[2, 1]) and (parametr[2, 1] = parametr[3, 1]) and ((parametr[3, 2] - parametr[1, 2]) / parametr[4, 2] = (parametr[3, 3] - parametr[1, 3]) / parametr[4, 3])) xor          
                 ((parametr[4, 2] = 0) and (parametr[1, 2] = parametr[2, 2]) and (parametr[2, 2] = parametr[3, 2]) and ((parametr[3, 1] - parametr[1, 1]) / parametr[4, 1] = (parametr[3, 3] - parametr[1, 3]) / parametr[4, 3])) xor                           
                    ((parametr[4, 3] = 0) and (parametr[1, 3] = parametr[2, 3]) and (parametr[2, 3] = parametr[3, 3]) and ((parametr[3, 1] - parametr[1, 1]) / parametr[4, 1] = (parametr[3, 2] - parametr[1, 2]) / parametr[4, 2])) xor             
                       ((parametr[4, 3] <> 0) and (parametr[4, 1] = 0) and (parametr[4, 2] = 0) and (parametr[3, 1] = parametr[2, 1]) and (parametr[3, 2] = parametr[2, 2])) xor                    
                          ((parametr[4, 2] <> 0) and (parametr[4, 1] = 0) and (parametr[4, 3] = 0) and (parametr[3, 1] = parametr[2, 1]) and (parametr[3, 3] = parametr[2, 3])) xor                       
                             ((parametr[4, 1] <> 0) and (parametr[4, 2] = 0) and (parametr[4, 3] = 0) and (parametr[3, 2] = parametr[2, 2]) and (parametr[3, 3] = parametr[2, 3])) xor                         
                                ((parametr[4, 1] = 0) and (parametr[4, 2] = 0) and (parametr[4, 3] = 0))) of true:
             writeln('Все точки лежат на одной прямой. Такой треугольник не существует.');

    Проверка треугольника в декартовой системе координат

    Meliodas, 04 Октября 2015

    Комментарии (10)
  3. JavaScript / Говнокод #18813

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    'пыщь' instanceof String //false
    Object('пыщь') instanceof String //true
    
    (function(){}) instanceof Function //true
    Object(function(){}) instanceof Function //true

    thepotato, 04 Октября 2015

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

    +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
    function checkForm(form, mustform){
    	error=0;
    	if(mustform){
    		for(i in mustform) if(form.elements[mustform[i]]){
    			if(!form.elements[mustform[i]].value){
    				error=1;
    				jQuery(form.elements[mustform[i]]).next().remove();
    				jQuery(form.elements[mustform[i]]).parent().append('<div style="color:red">поле обязательно к заполнению</div>');
    			} else jQuery(form.elements[mustform[i]]).next('div').remove();
    		}
    		if(error>0) return false; else return true;
    	} else return true;
    }

    такого codestyle не встречал))

    progsmile, 02 Октября 2015

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function MM_goToURL() { //v3.0
      var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
      for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
    }
    
    function get_acessories(id) {
    document.form3.acessories.value = document.form3.acessories.value + id + " ";
    }

    вообще не знаю что эта штука делает О_о)

    progsmile, 02 Октября 2015

    Комментарии (4)
  6. PHP / Говнокод #18808

    −10

    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
    $textbody="<form name=\"form1\" method=\"post\" enctype=\"multipart/form-data\" action=\"foto_groups.php?do=add\">
                    <center>Добавление пункта меню:</center>
                    <table cellspacing=1 cellpadding=2 width=\"100%\" border=0 bgcolor=\"#CCCCCC\">
    	<tr bgcolor=\"#FFFFFF\"><td width=\"150\">Название:</td><td><input name=\"group_name\" type=\"text\" size=\"70\" maxlength=\"255\" class=\"input\" ></td></tr>
    	<tr bgcolor=\"#FFFFFF\"><td colspan=\"2\">Описание:<br /><textarea name=\"wp1\" id=\"elm2\" rows=\"40\" style=\"width:100%;\"></textarea></td></tr>
                    <tr bgcolor=\"#FFFFFF\"><td width=\"150\">&nbsp;</td><td><input type=\"Submit\" name=\"Submit\" value=\"Добавить группу\" class=\"input\"></td></tr>
                    </table></form>";
            } 
    
    if(!Isset($do)) {
            $textbody="<table cellspacing=1 cellpadding=2 width=\"100%\" border=0 bgcolor=\"#CCCCCC\">
    <tr bgcolor=\"#EFEFEF\"><td width=\"20\">ID</td><td width=\"300\">Название группы</td><td>Описание</td><td width=\"20\">&nbsp;</td><td width=\"20\">&nbsp;</td></tr>\r\n";
            $query = "SELECT * from foto_cat_eng ORDER BY id ASC;";
            $result = MYSQL_QUERY($query) or die("Ошибка в строке запроса:<br><textarea cols=60 rows=10>$query</textarea>");
            while ($row = mysql_fetch_array($result)) {
                $textbody .= "<tr bgcolor=\"#FFFFFF\"><td valign=\"middle\" width=\"20\">".$row["id"]."</td><td valign=\"middle\" width=\"300\">".$row["name"]."</td><td valign=\"middle\">".substr(strip_tags($row["description"]), 0, 100)."</td><td><a href=\"foto_groups.php?do=edit&id=".$row["id"]."\" alt=\"Редактировать...\" title=\"Редактировать...\"><img src=\"img/edit.gif\" width=18 height=18 border=0></a></td><td><a href=\"foto_groups.php?do=delete&id=".$row["id"]."\" onclick=\"return confirm(' Удалить ".$row["name"]."?');\"><img src=\"img/del.gif\" border=0 title=\"Удалить\" alt=\"Удалить\"></a></td></tr>\r\n";
            }
            $textbody.="</table>"; 
    }
    
    include('templates/header.php');
    write_top_panel('goods.gif');

    дино. продолжение)

    progsmile, 02 Октября 2015

    Комментарии (13)
  7. C# / Говнокод #18806

    +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
    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
    using DocsTaskInfo = System.Collections.Generic.KeyValuePair<int, bool>;
    using DocAndContentType = System.Collections.Generic.KeyValuePair<int, string>;
    using DocAndContentTypeToCount = System.Collections.Generic.Dictionary<System.Collections.Generic.KeyValuePair<int, string>, System.Collections.Generic.KeyValuePair<int, bool>>;
    //...
    private void DocsCountInternal(RefNetDbContainerDirect db, int docType, string contentType,  int status, int count, bool Checked = true){/*...*/}
    //...
    private DocAndContentTypeToCount[] _docCheckTasks;
    private RefNetDbContainerDirect _dbForCheck;
    private void ClearAllDocCounts(RefNetDbContainerDirect dbForCheck)
            {
                _dbForCheck = dbForCheck;
                _docCheckTasks = Enumerable.Repeat(new DocAndContentTypeToCount(), 2).ToArray();
                    //new DocAndContentTypeToCount[2] { new DocAndContentTypeToCount(), new DocAndContentTypeToCount() };
            }
    private void DocsCount(RefNetDbContainerDirect db, int docType, string contentType, int status, int count, bool Checked = true)
            {
                var taskHistory = _docCheckTasks[status];
                var taskKey = new DocAndContentType(docType, contentType);
                var taskInfo = new DocsTaskInfo(count, Checked);
                if(taskHistory.ContainsKey(taskKey))
                    _exceptions.Add(new Exception(string.Format(
                                     "CheckDocsTask with (_.idDocType == {0}) && (_.contentType == \"{1}\") && (_.status == {2}) ) already contained",
                                     docType, contentType, status)));
                taskHistory.Add(taskKey, taskInfo);
            }
    private void CheckAllDocCounts()
            {
                if (AllDocumentsMadeByServer)
                {
                    //1
                    var taskKeys = _docCheckTasks.SelectMany(_ => _.Keys)/*.Distinct()*/.ToArray();
                    foreach (var taskKey in taskKeys)
                    {
                        DocAndContentType key = taskKey;
                        foreach (var statusedTask in _docCheckTasks.Where(statusedTask => !statusedTask.ContainsKey(key)))
                            statusedTask.Add(taskKey, new DocsTaskInfo(0, true));
                    }
                    taskKeys.Select(_ => new
                    {
                        docAndContentType = _,
                        count = _docCheckTasks[0][_].Key + _docCheckTasks[1][_].Key,
                        Checked = _docCheckTasks[0][_].Value && _docCheckTasks[1][_].Value
                    }).ForEach(_ => DocsCountInternal(_dbForCheck, _.docAndContentType.Key, _.docAndContentType.Value, 1, _.count, _.Checked));
            }
                else
                    //0 и 1
                    foreach(var statusedTask in _docCheckTasks.Select((tasks, status) => new {tasks, status}))
                        foreach (var task in statusedTask.tasks)
                            DocsCountInternal(_dbForCheck, task.Key.Key, task.Key.Value, statusedTask.status, task.Value.Key, task.Value.Value);
                _docCheckTasks = null;
                _dbForCheck = null;
            }

    Автору я бы посоветовал утопиться, но как посоветуете отрефакторить?
    Планировалось, что чувак вызывает ClearAllDocCounts, затем много раз метод DocsCount, а потом CheckAllDocCounts.

    USB, 02 Октября 2015

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

    +5

    1. 1
    2. 2
    std::string cmd = "some command";
    Socket.Write( cmd.c_str(), strlen( cmd.c_str() ) );

    сишные плюсЫ

    absolut, 02 Октября 2015

    Комментарии (94)
  9. JavaScript / Говнокод #18803

    +2

    1. 1
    entry.number = $('.info', this).text().split(';')[1].slice($('.info', this).text().split(';')[1].search(':'), $('.info', this).text().split(';')[1].search('/')).trim()

    Регэкспы не нужны.

    thepotato, 02 Октября 2015

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

    −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
    Функция ПолучитьДоговорКонтрагента(Организация,Подразделение,Контрагент) Экспорт
    	
    	 ЗапросДоговор = Новый Запрос;
    		ЗапросДоговор.Текст = "ВЫБРАТЬ
    		               |	ДоговорыКонтрагентов.Ссылка
    		               |ИЗ
    		               |	Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
    		               |ГДЕ
    		               |	ДоговорыКонтрагентов.Организация = &Организация
    		               |	И ДоговорыКонтрагентов.Подразделение = &Подразделение
    		               |	И ДоговорыКонтрагентов.Владелец = &Владелец
    		               |
    		               |СГРУППИРОВАТЬ ПО
    		               |	ДоговорыКонтрагентов.Ссылка";
    		ЗапросДоговор.УстановитьПараметр("Организация",Организация);
    		ЗапросДоговор.УстановитьПараметр("Подразделение",Подразделение);
    		ЗапросДоговор.УстановитьПараметр("Владелец",Контрагент);
    		Результат = ЗапросДоговор.Выполнить();
    		Если НЕ Результат.Пустой() Тогда
    			Возврат Результат.Выбрать().Следующий();
    		Иначе
    			
    			Возврат Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
    			
    		КонецЕсли;
    	
    КонецФункции

    Вот вроде функция общего модуля называется ПолучитьДоговорКонтрагента, и ты, не заглядывая в неё, конечно же, ждёшь возврата ссылки на спр-к ДоговорыКонтрагентов, но нет!!

    SkyHunter, 02 Октября 2015

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