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

    +116

    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
    #define KRATNOST6_STEPE32_(VAL) \ 
      (                            \ 
      (\ 
      (VAL/32*32)+(((VAL/32)^1)*(\ 
        (VAL/16*16)+(((VAL/16)^1)*(\ 
          (VAL/8*8)+(((VAL/8)^1)*(\ 
            (VAL/4*4)+(((VAL/4)^1)*(\ 
              (VAL/2*2)\ 
            ))\ 
          ))\ 
        ))\ 
      ))\ 
      )\ 
      +\ 
      ((\ 
      (VAL/32)+(((VAL/32)^1)*(\ 
        (VAL/16)+(((VAL/16)^1)*(\ 
          (VAL/8)+(((VAL/8)^1)*(\ 
            (VAL/4)+(((VAL/4)^1)*(\ 
              (VAL/2)\ 
            ))\ 
          ))\ 
        ))\ 
      ))\ 
      )^1)*32\ 
      ) 
    #define KRATNOST6_STEPE32(MAX_STEPEN6,VAL) KRATNOST6_STEPE32_(((int)VAL&((1<<(MAX_STEPEN6+1))-1)))

    Вычисление ближайшей кратности к степ 2 в препроцессоре, такую байду сорудил. (не знаю правильно ли выразился)
    Тут максимальная 32. Если есть выше то вот тут выставляется 32 всёравно.

    Проще не варик?

    TarasB, 05 Сентября 2012

    Комментарии (12)
  2. Python / Говнокод #11709

    −100

    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
    def profile_edit(request, template_name='profile/subdiler/profile_edit.html'):
        profile = request.profile
        
        if request.method == "POST":
            form = DilerProfileForm(request.POST, request.FILES, instance=profile)
            if form.is_valid():
                profile = form.save(commit=False)
                try:
                    profile.avatar = profile.avatar[0]
                except:
                    pass
                try:
                    profile.sign = profile.sign[0]
                except:
                    pass
                profile.city = form.city
                profile.save()

    Замечательная цепочка из try-cath
    Не менее замечательно то, что метод profile_edit полностью идентичный лежит в двух файлах subdiler_views.py и diler_views.py
    Разница между ними только в переменной template_name='profile/(subdiler|diler)/profile_edit.html'
    Для чего так сделано, мне нипанять.

    хуита, 05 Сентября 2012

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    try {
                        /**
                         * Нахожу номер "начисления" в массиве "charges" По соответствию поля "adapter".
                         */
                        _.each(currentEmployee.charges, function (charge, num) {
                            if (_.isEqual(charge.adapter, currentCharge.adapter)) {
                                throw num;
                            }
                        }, this);
                    } catch (num) {тут какой то код}

    Самый оригинальный спомоб выйти из цикла
    Используется underscore.js

    nur, 05 Сентября 2012

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

    +49

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $em = $this->getDoctrine()->getEntityManager();
    $user = $em->getRepository('AdminBundle:AdminUser')
            ->findOneById($id);
    if ($user == $this->get('security.context')->getToken()->getUser()) {
            $this->get('session')->setFlash('admin-delete', 'TODO:TRANSLATE: Suicide is not allowed. Thank you!');
    } else {
            $em->remove($user);
            $em->flush();
            $this->get('session')->setFlash('admin-delete', 'TODO:TRANSLATE: User ' . $user->getEmail(). ' was deleted.');
    }

    Текст ошибок просто супер!

    EugeneC, 05 Сентября 2012

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

    +137

    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
    {
        //конструктор
        public MotionEventsController(VideoServer server, MSO2Rotator rotator, Log log, Button recordButton)
        {
            _server = server;
            _rotator = rotator;
            _log = log;
            _recordButton = recordButton;
        }
        public void Record(MotionDetectorFilter filter, MotionObjectsArgs movingObjects)
        {
            _server.StartRecord();
             IsRecording = true;
            _recordButton.BackColor = Color.Red;
            switch (_server.Name)
            {
                case ServerNames.ColorServer:
                    _log(Resources.ColorStartRecord, String.Empty);
                    break;
                case ServerNames.BwServer:
                    _log(Resources.BWStartRecord, String.Empty);
                    break;
                case ServerNames.ThermalServer:
                    _log(Resources.ThermalStartRecord, String.Empty);
                    break;
            }    
        }
    }

    Класс, принимающий кнопку записи в конструкторе.

    Flyperformances, 05 Сентября 2012

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

    +133

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if((i & 0x01)!=0) addr |= 0x80; else addr &= ~0x80;
    if((i & 0x02)!=0) addr |= 0x40; else addr &= ~0x40;
    if((i & 0x04)!=0) addr |= 0x20; else addr &= ~0x20;
    if((i & 0x08)!=0) addr |= 0x10; else addr &= ~0x10;
    if((i & 0x10)!=0) addr |= 0x08; else addr &= ~0x08;
    if((i & 0x20)!=0) addr |= 0x04; else addr &= ~0x04;
    if((i & 0x40)!=0) addr |= 0x02; else addr &= ~0x02;
    if((i & 0x80)!=0) addr |= 0x01; else addr &= ~0x01;

    Перестановка бит в обратном порядке.

    govnokod3r, 05 Сентября 2012

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

    +170

    1. 1
    for(i=-1;++i<n;)

    зачем? чтобы никто не догадался? или они думают, что в этом меньше символов чем в for(i=0;i<n;i++) ?

    makc3d, 04 Сентября 2012

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

    +35

    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
    function month_name($m) { 
      switch ($m) { 
        case 1:  
          return 'January';  
          break; 
        case 2:  
          return 'February';  
          break; 
        case 3:  
          return 'March';  
          break; 
    // ...
      } 
    }

    С PHPClasses. Номинировано на что-то там
    http://www.phpclasses.org/browse/file/41300.html

    Tairesh, 04 Сентября 2012

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

    +111

    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
    var serializer = new XmlSerializer(CurcedFiles.GetType());
                        try
                        {
                            CurcedFiles = (List<string>)serializer.Deserialize(stream);
                            status = true;
                        }
                        catch (Exception)
                        {
                            stream.Close();
                            Random rnd = new Random();
                            int a = rnd.Next(1, 1000);
                            File.Move("CurceFile.xml", "CurceFile_error " + a.ToString() + ".xml");
                            status = false;
                        }

    Попытка прочитать из xml список файлов для удаления.

    Flyperformances, 04 Сентября 2012

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

    +45

    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
    public function getpanelAction(){
            exit('<div style="padding:10px;color:#fff;font-size:12px; border-radius:3px; display: none; position: absolute; top: 50%; left:50%; background: rgba(0, 0,0, 0.8); width: 570px; margin-left: -257px; min-height: 200px" id="edit">
                <input name="password" placeholder="пароль"/><br/> 
                <div data-num="0" style="width:100%;heigh:20px;" class="date">
                    Год: <select name="year">
                        <option value="2012">2012</option>
                        <option value="2013">2013</option>
                        <option value="2014">2014</option>
                        <option value="2015">2015</option>
                        <option value="2016" >2016</option>
                    </select>                
                    месяц <select name="moth">
                    <option value="0">Январь</option>
                    <option value="1">Февраль</option>
                    <option value="2">Март</option>
                    <option value="3">Апрель</option>
                    <option value="4">Май</option>
                    <option value="5">Июнь</option>
                    <option value="6">Июль</option>
                    <option value="7">Август</option>
                    <option value="8">Сентябрь</option>
                    <option value="9">Октябрь</option>
                    <option value="10">Ноябрь</option>
                    <option value="11">Декабрь</option>
                    </select>                
                    число: <select name="num">
                        <option value="1">1</option>
                    </select>
                    Час: <select name="hour">
                        <option value="0">0</option>
                        <option value="1">1</option>
                        <option value="2">2</option>
                        <option value="3">3</option>
                        <option value="4">4</option>
                        <option value="5">5</option>
                        <option value="6">6</option>
                        <option value="7">7</option>
                        <option value="8">8</option>
                        <option value="9">9</option>
                        <option value="10">10</option>
                        <option value="11">11</option>
                        <option value="12">12</option>
                        <option value="13">13</option>
                        <option value="14">14</option>
                        <option value="15">15</option>
                        <option value="16">16</option>
                        <option value="17">17</option>
                        <option value="18">18</option>
                        <option value="19">19</option>
                        <option value="20">20</option>
                        <option value="21">21</option>
                        <option value="22">22</option>
                        <option value="23">23</option>                    
                    </select>
                    </div>
                    <div id="additional"></div>
                    <a style="width:100%;display:block;background:#656565;text-align:center;cursor:pointer;" id="add">Добавить еще дату</a>
                    <div>Дата указывается в GMT+0</div>
                    <a id="bethoven" style="cursor:pointer;padding:4px;font-size:14px;background:#F7F7F7;color:#656565;display:block; height:17px; width:70px;float:right;">Отправить</a>
                </div>');
        }

    Лень, психанул

    Stud, 04 Сентября 2012

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