1. Ruby / Говнокод #4913

    −98

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    def non_blank_attrs_amount
        return_value = 4
        return_value = return_value + 1 if (!country.blank?)
        return_value = return_value + 1 if (!address.blank?)
        return_value = return_value + 1 if (!phone.blank?)
        return_value = return_value + 1 if (!email.blank?)
        return_value = return_value + 1 if (!skype.blank?)
        return_value = return_value + 1 if (!site.blank?)
        return_value = return_value + 1 if (!comment.blank?)
        return_value.to_s
      end

    Dreamfall, 13 Декабря 2010

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

    +103

    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
    /// <summary>
        /// Абстрактный класс, который содержит в себе информацию о человеке
        /// </summary>
        public abstract class APerson
        {
            protected string name;
            protected DateTime birthTime;
            protected ESex sex; // защищенный секс такой защищенный:) 
             
            //реализация
            //..
            //реализация 
        }
    
        /// <summary>
        /// Перечисление ESex - содержит пол человека
        /// </summary>
        public enum ESex
        {
            Мужской,
            Женский
        }

    В процессе написания курсовой. Да-да, студентота.

    tooZ, 13 Декабря 2010

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

    +121

    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
    [DataContract]
         public class DismissForm1ReportItem {
              [DataMember]
              public int grPersonalCode { get; set; }
              [DataMember]
              public string grPersonalName { get; set; }
              [DataMember]
              public int grIndustrialCode { get; set; }
              [DataMember]
              public string grIndustrialName { get; set; }
              [DataMember]
              public string cexCode { get; set; }
              [DataMember]
              public string cexName { get; set; }
              [DataMember]
              public int totalDismissed { get; set; }
              [DataMember]
              public int dismissedProfGroup1 { get; set; }
              [DataMember]
              public int dismissedProfGroup2 { get; set; }
              [DataMember]
              public int dismissedProfGroup3 { get; set; }
              [DataMember]
              public int dismissedProfGroup4 { get; set; }
              [DataMember]
              public int dismissedProfGroup5 { get; set; }
              [DataMember]
              public int dismissedProfGroup6 { get; set; }
              [DataMember]
              public int dismissedProfGroup7 { get; set; }
              [DataMember]
              public int dismissedProfGroup8 { get; set; }
              [DataMember]
              public int dismissedProfGroup9 { get; set; }
              [DataMember]
              public int dismissedProfGroup10 { get; set; }
              [DataMember]
              public int dismissedProfGroup11 { get; set; }
              [DataMember]
              public int dismissedProfGroup12 { get; set; }
              [DataMember]
              public int dismissedProfGroup13 { get; set; }
              [DataMember]
              public int dismissedProfGroup14 { get; set; }
              [DataMember]
              public int dismissedProfGroupOther { get; set; }
         }

    Откуда вот берутся такие наклонности? Как можно так называть члены классов? (Это только один подобный класс из множества!) Может быть сделать специальную версию Framework'а для таких людей, где классам давать имена Class1, Class2, ..., а методам Method1, Method2, ...

    Guid, 13 Декабря 2010

    Комментарии (27)
  4. Python / Говнокод #4910

    −179

    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
    class Source:
    		id = ''
    		values = []
    		arrays =[ ( 'bool_array', bool), ( 'float_array', float), ('IDREF_array', str), ('int_array', int), ('Name_array', str), ('SIDREF_array', str), ('token_array', str)]
    		
    		def __init__(self, node):
    			self.id = node.getAttribute('id')
    			
    			accessors = dict([ (accessor.getAttribute('source')[1:], (int(accessor.getAttribute('count')), int(accessor.getAttribute('stride'))) ) for technique in node.getElementsByTagName("technique_common") for accessor in technique.getElementsByTagName("accessor") ])
    			values = [(arrayNode.getAttribute('id'), int(arrayNode.getAttribute('count')), [array[1](v) for v in getText(arrayNode).split()]) for array in Mesh.Source.arrays for arrayNode in node.getElementsByTagName(array[0])]
    			self.values = [ array[2][i*accessors[array[0]][1]:(i+1)*accessors[array[0]][1]] for array in values for i in range(accessors[array[0]][0])]
    			
    
            <source id="Box001-lib-Position">
              <float_array id="Box001-lib-Position-array" count="24">-23.296745 -46.390999 0.000000 23.296745 -46.390999 0.000000 -23.296745 46.390999 0.000000 23.296745 46.390999 0.000000 -23.296745 -46.390999 35.287621 23.296745 -46.390999 35.287621 -23.296745 46.390999 35.287621 23.296745 46.390999 35.287621</float_array>
              <technique_common>
                <accessor source="#Box001-lib-Position-array" count="8" stride="3">
                  <param name="X" type="float"/>
                  <param name="Y" type="float"/>
                  <param name="Z" type="float"/>
                </accessor>
              </technique_common>
            </source>
    
    в результате нужно получить список в виде
    [[-23.296745, -46.390999, 0.0], [23.296745, -46.390999, 0.0], [-23.296745, 46.390999, 0.0], [23.296745, 46.390999, 0.0], [-23.296745, -46.390999, 35.287621], [23.296745, -46.390999, 35.287621], [-23.296745, 46.390999, 35.287621], [23.296745, 46.390999, 35.287621]]

    Неделю назад начал учить питон, и для того чтоб это было совсем полезно, решил попробовать написать на нем парсер Collada файлов.
    Очень сильно проникся идеей инициализации массивов, из-за чего и родился сей говнокод...
    Код выдает правильный результат, но абсолютно не читаемый...

    pushkoff, 13 Декабря 2010

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

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $cif = range(0, 9);
    $mal = range('a', 'z');
    $bol = range('A', 'Z');
    $ob = array_merge($cif, $mal, $bol);
    shuffle($ob);
    $ar = array_slice($ob,0, 5);
    $vivod = implode("", $ar);

    Очередной генератор капчи/пароля.
    Вдруг кому пригодится ;)

    Uchkuma, 12 Декабря 2010

    Комментарии (62)
  6. Java / Говнокод #4908

    +85

    1. 1
    while (r == BigInteger.ONE.subtract(BigInteger.ONE)) {...}

    брутальный 0 и не менее брутальное сравнение объектов...

    dfn, 12 Декабря 2010

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

    +109

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    procedure TForm2.ExitButtonClick(Sender: TObject);
    begin
    Close;
    Form1.Close;
    end;

    Об Application.Terminate даже и не догадываемся...

    PEMOHT, 12 Декабря 2010

    Комментарии (14)
  8. Pascal / Говнокод #4906

    +105

    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
    case nd of
    0..9:days.Caption := '00'+IntToStr(nd);
    10..99:days.Caption := '0'+IntToStr(nd);
    100..999:days.Caption := IntToStr(nd);
    end;
    case nh of
    0..9:hrs.Caption := '0'+IntToStr(nh);
    10..99:hrs.Caption := IntToStr(nh);
    end;
    case nm of
    0..9:mins.Caption := '0'+IntToStr(nm);
    10..99:mins.Caption := IntToStr(nm);
    end;
    case nsec of
    0..9:secs1.Caption := '0'+IntToStr(nsec);
    10..99:secs1.Caption := IntToStr(nsec);
    end;
    case nsec2 of
    0..9:secs2.Caption := '0000000'+IntToStr(nsec2);
    10..99:secs2.Caption := '000000'+IntToStr(nsec2);
    100..999:secs2.Caption := '00000'+IntToStr(nsec2);
    1000..9999:secs2.Caption := '0000'+IntToStr(nsec2);
    10000..99999:secs2.Caption := '000'+IntToStr(nsec2);
    100000..999999:secs2.Caption := '00'+IntToStr(nsec2);
    1000000..9999999:secs2.Caption := '0'+IntToStr(nsec2);
    10000000..99999999:secs2.Caption := IntToStr(nsec2);
    end;

    Таймер для дураков.

    PEMOHT, 12 Декабря 2010

    Комментарии (8)
  9. Си / Говнокод #4905

    +137

    1. 1
    2. 2
    3. 3
    4. 4
    if (MACaddress == 0)
    		MACaddress = pAdapterInfo->Address [5] + pAdapterInfo->Address [4] * 256 + 
    					pAdapterInfo->Address [3] * 256 * 256 + 
    					pAdapterInfo->Address [2] * 256 * 256 * 256;

    xynta, 12 Декабря 2010

    Комментарии (22)
  10. Python / Говнокод #4904

    −167

    1. 1
    2. 2
    3. 3
    4. 4
    if abs(self.__last_direction%360-direction.angle())==270:
                angle = 360*(self.__last_direction/360+1)+direction.angle()
            else:
                angle = 360*(self.__last_direction/360) + direction.angle()

    крутим крутим спрайт

    nbdarvin, 12 Декабря 2010

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