1. PHP / Говнокод #12910

    +152

    1. 1
    $language = json_decode(JFactory::getUser()->getProperties()['params'])->language;

    Посоны, это нормально или у меня диагноз Чехова?

    nonamez, 18 Апреля 2013

    Комментарии (24)
  2. Си / Говнокод #12908

    +131

    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
    ////выполнение полного сброса, конфигурирования и проверки того что записано в регистрах
    ////0 - проверка неудачная
    ////1 - все нормально
    BYTE ADE7758::Full_Check(void)
    {
        OS_DI();
        
        if(Check())//проверка состояний регистров
            return 1;//все нормально
        else
        {
            
            Configure();
            OS_Delay(1);//ждем пока нестабильность пройдет
            if(Check())//проверка состояний регистров
                return 1;//все нормально
            else //после переконфигурации не все нормально - значит делаем ресет
            {
                OS_Delay(100);//ждем пока нестабильность пройдет
                Reset();	//полный сброс
                OS_Delay(10);//ждем еще чуть-чуть для завершения пересброса (на всякий случай)
                Configure();//переконфигурация
                //OS_Delay(500);//ждем пока нестабильность пройдет		
                if(Check())//снова проверка состояний регистров
                    return 1;//после пересброса все нормально
                else
                {
                    OS_Delay(500);//ждем пока нестабильность пройдет
                    Reset();	//полный сброс
                    Configure();//переконфигурация
                    OS_Delay(500);//ждем пока нестабильность пройдет
                    if(Check())//снова проверка состояний регистров
                    {
                        return 1;//после пересброса все нормально
                    }
                    else
                    {
                        return 0;//все проверки неудачные - выход с ошибкой
                    }
                }
            }
        }	
    }

    "Нельзя доверять никому. Совсем никому. Даже самому себе."
    Разумеется это вызывается в прерывании 200 раз в секунду.
    1 тик OS_Delay() = 10мс.
    Разрешение прерываний после сделает "дядя Вася".
    Зато знаем классы и умеем их писать.

    apparato, 18 Апреля 2013

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

    +100

    1. 1
    DateTime.Now.ToString("HH:mm:ss.ffffff").Replace(":", "").Replace(".", "")

    facepalm

    kore_sar, 18 Апреля 2013

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

    +162

    1. 1
    var days_in_april = 32 - new Date(2013, 3, 32).getDate();

    Получаем число дней в месяце.

    А что, менее черезжопинским вариантом этого сделать никак?

    vse_govno, 17 Апреля 2013

    Комментарии (11)
  5. Си / Говнокод #12905

    +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
    void DUR_check()
    {
        DUR_tick[DUR_link]=DUR_tmp_tick;
        DUR_tmp_tick=0;
        DUR_link++;
        if(DUR_link > 9) DUR_link=0;
        S32 tmp3 = DUR_tick[0] + DUR_tick[1] + DUR_tick[2] + DUR_tick[3] + DUR_tick[4] + DUR_tick[5] + DUR_tick[6] + DUR_tick[7] + DUR_tick[8] + DUR_tick[9];
        //tmp3=((tmp3-HZ_MIN)*100)/(HZ_MAX-HZ_MIN);
        tmp3=(tmp3/10)-50;
        if(tmp3<0)tmp3=0;
        if(tmp3>100)tmp3=100;
        DUR_level=tmp3;
    }

    Первый блин, возможно комом.
    Один из проектов, который был передан мне.
    Это расчет процента заполнения ёмкости по частотному датчику.
    DUR_tmp_tick - количество прерываний от датчика,
    DUR_level - это и есть рассчитанные проценты.
    Все переменные глобальные, фильтр организован.
    Вызывается функция в другом прерывании, от таймера.
    Впрочем, всё остальное тоже вызывается в прерывании от таймера.

    apparato, 17 Апреля 2013

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

    +152

    1. 1
    return x==y && "$x"=="$y";

    а вдруг нет?

    Lure Of Chaos, 17 Апреля 2013

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

    +149

    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
    <?php 
    	if($_POST['start']>150)
    		die('NULL');
    	$start=$_POST['start'];
    	$end=min($start+$_POST['limit'],150);
    	$k=0;
    	for($i=$start;$i<$end;++$i)
    	{if($k>50)
    		die();
    		$k++;
    		?>
    		
    <div class="table_account bg_color_ta_1">
    ...

    Вот такую гранату я сегодня получил от "выпускника" Харьковского вуза по специализации программирования.
    Тут уже чуток обсуждали http://webimho.ru/topic/5481/

    q10800, 17 Апреля 2013

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

    +7

    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
    MashTextGen::MashTextGen()
    {
    	files.push_back("BarButton.cpp");
    	files.push_back("CreateBar.cpp");
    	files.push_back("Eventfulness.cpp");
    	files.push_back("Glob.cpp");
    	files.push_back("main.cpp");
    	files.push_back("mashtextgen.cpp");
    	files.push_back("MashWindow.cpp");
    	files.push_back("Note.cpp");
    	files.push_back("NotificationBar.cpp");
    	files.push_back("Render.cpp");
    	files.push_back("RogueWindow.cpp");
    	files.push_back("WorldWindow.cpp");
    	files.push_back("BarButton.h");
    	files.push_back("CreateBar.h");
    	files.push_back("Eventfulness.h");
    	files.push_back("Glob.h");
    	files.push_back("main.h");
    	files.push_back("mashtextgen.h");
    	files.push_back("MashWindow.h");
    	files.push_back("Note.h");
    	files.push_back("NotificationBar.h");
    	files.push_back("Render.h");
    	files.push_back("RogueWindow.h");
    	files.push_back("WorldWindow.h");
    	
    	LoadMoreData();
    	picker = 0;
    }

    Я так и не понял зачем этот код.
    Найдено в опенсорсной игре.

    x0m9k, 17 Апреля 2013

    Комментарии (30)
  9. PHP / Говнокод #12900

    +151

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (count($items) > 100) {
        for ($i = count($items); 100 < count($items); $i--) {
            unset($items[$i-1]);
        }
    }

    Массив должен содержать сто или меньше элементов

    VanSanblch, 16 Апреля 2013

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

    +148

    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
    if(!empty($_POST['Order']['tp1'])) {
        $step3_arr['tp1'] = intval($_POST['Order']['tp1']);
    }
    
    if(!empty($_POST['Order']['tp2'])) {
        $step3_arr['tp2'] = intval($_POST['Order']['tp2']);
    }
    
    if(!empty($_POST['Order']['tp3'])) {
        $step3_arr['tp3'] = intval($_POST['Order']['tp3']);
    }
    
    if(!empty($_POST['Order']['tp4'])) {
        $step3_arr['tp4'] = intval($_POST['Order']['tp4']);
    }
    
    if(!empty($_POST['Order']['eggs1'])) {
        $step3_arr['eggs1'] = intval($_POST['Order']['eggs1']);
    }
    
    if(!empty($_POST['Order']['eggs2'])) {
        $step3_arr['eggs2'] = intval($_POST['Order']['eggs2']);
    }
    
    if(!empty($_POST['Order']['eggs3'])) {
        $step3_arr['eggs3'] = intval($_POST['Order']['eggs3']);
    }
    
    if(!empty($_POST['Order']['eggs4'])) {
        $step3_arr['eggs4'] = intval($_POST['Order']['eggs4']);
    }

    Форма заказа. это только часть длинного листинга if-ов :).

    oxser, 16 Апреля 2013

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