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

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

    −30

    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
    #include <iostream>
    #include <conio.h>
    
    
    using namespace std;
    
    
    char* find(char* str)
    {
    	int i = 0, mlen=0;
    	char* minword = new char[100];
    	char* curword = new char[100];
    	while(str[i]==' ') i++;
    	mlen = i;
    	while((str[mlen]!=' ')&&(str[mlen])) mlen++;
    	mlen -= i;
    	strncpy(minword, str+i, mlen);
    	minword[mlen] = '\0';
    	i += mlen;
    	while(str[i])
    	{		
    		while(str[i]==' ') i++;
    		mlen = i;
    		while((str[mlen]!=' ')&&(str[mlen])) mlen++;
    		mlen -= i;
    		strncpy(curword, str+i, mlen);
    		curword[mlen] = '\0';
    		i += mlen;
    		
    		if(strcmp(minword, curword) > 0)
    		{
    			strcpy(minword, curword);
    		}
    	}
    	return minword;
    }
    
    void del(char*& str, char* str2)
    {
    	int i = 0, j =0, st=0;
    	char* nstr = new char[200];
    	
    	while(str[i])
    	{
    			j = 0;
    			while(str[i]==str2[j])
    			{
    				i++; j++;
    			}
    			if(j==strlen(str2))
    			{
    				strncpy(nstr, str+st, i-j);
    				nstr[i-j] = '\0';
    				st = i;
    				break;
    			}
    			i++;
    	}
    	strcat(nstr, str+st);
    	str = nstr;
    }
    
    
    void sort(char*& str)
    {
    	int len = strlen(str);
    	char* nstr = new char[200];
    	char* buf = new char[200];
    	buf = find(str);
    	strcpy(nstr, buf);
    	del(str, buf);
    	while(strlen(nstr) != len)
    	{
    		buf = find(str);
    		strcat(nstr, " ");
    		strcat(nstr, buf);
    		del(str, buf);
    	}
    	nstr[len] = '\0';
    	str = nstr;
    }
    
    
    
    void main()
    {
    	char* str = new char[200];
    	str = "my little pony";
    	sort(str);
    	cout<<str;
    }

    Из вузовского компьютера.

    dos_, 03 Июня 2012

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

    −24

    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
    template <bool ValueToLock>
    	class TBoolLocker
    	{
    	private:
    		bool _lockedValue;
    	public:
    		TBoolLocker(void) : _lockedValue(!ValueToLock) {}
    		TBoolLocker(const TBoolLocker & Copy) : _lockedValue(Copy._lockedValue) {}
    		const TBoolLocker & operator=(const TBoolLocker & Copy)
    		{
    			_lockedValue = Copy._lockedValue;
    			return *this;
    		}
    		bool update(const bool NewValue)
    		{
    			if (_lockedValue != ValueToLock)
    				_lockedValue = NewValue;
    			return _lockedValue;
    		}
    	};

    Говногость, 16 Мая 2012

    Комментарии (18)
  4. Java / Говнокод #10252

    +69

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    //JAVA
    request.setAttribute("sexForRegi", person.getSex().getLogicConstant());
    //А теперь и JSTL: 
    <c:choose>
       <c:when test="${sexForRegi == 'MALE'}">
          <div class="sys-icon-128x128 icon-128x128-RegEndMan"></div>
       </c:when>
       <c:when test="${sexForRegi == 'FEMALE'}">
          <div class="sys-icon-128x128 icon-128x128-RegEndWoman"></div>
       </c:when>                  
    </c:choose>

    Sex - это у меня сущность, которая определяет половую принадлежность.
    Regi - Action, отвечающий за регистрацию.
    Вот и назвал переменную, чтобы определять какую картинку выводить "sexForRegi".
    Вдумавшись, такое название наталкивает на мнение, что регистрация возможна только через секс =)

    Dvelopp, 12 Мая 2012

    Комментарии (18)
  5. Java / Говнокод #9997

    +73

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    return suffix == ' ' ? ssize : (
                    si ? ssize + suffix : (
                        suffix == ' ' ? ssize + suffix : (
                            ssize + suffix + "iB"
                        )
                    )
            );

    Ведь всего-то навсего
    if (suffix == ' ') return ssize;
    if (si) return ssize + suffix;
    return ssize + suffix + "iB";

    Doctoror, 20 Апреля 2012

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

    +953

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    string[] phoneNumbers = new string[4];
    phoneNumbers[0] = (!string.IsNullOrEmpty(dirtyData.Телефон1)) ? dirtyData.Телефон1 : "";
    phoneNumbers[1] = (!string.IsNullOrEmpty(dirtyData.Телефон2)) ? dirtyData.Телефон2 : "";
    phoneNumbers[2] = (!string.IsNullOrEmpty(dirtyData.Телефон3)) ? dirtyData.Телефон3 : "";
    phoneNumbers[3] = (!string.IsNullOrEmpty(dirtyData.Телефон4)) ? dirtyData.Телефон4 : "";

    Данные хранятся в MSSQL, Половина таблиц по русски, а в некоторых таблиц поля написаны по русско-английски. Я считаю это плохим тоном. А ведь мне с этим работать в дальнейшем :(((

    nolka4, 20 Апреля 2012

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

    +142

    1. 1
    2. 2
    3. 3
    i:=1;
    if i=1 then i:=1;
    else i:=1;

    nefedoff-96, 05 Апреля 2012

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

    +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
    var
       one, two, free, four:string;
    begin
       one:=sLabel14.Caption+slabel14.caption;
       two:=sLabel1.Caption+slabel15.caption;
       free:=sLabel10.Caption+slabel16.caption;
       four:=sLabel7.Caption+slabel17.caption;
    
       if ((one = two) or (one = free) or (one = four)
       or (two = one) or (two = free) or (two = four)
       or (free = one) or (free = two) or (free = four)
       or (four = one) or (four = two) or (four = free))
       then begin
           showmessage('Значения должны быть различными');
       end
       else begin
           showmessage('Успешно сохранено');
       end;

    Ну не лол?

    penkovsky1, 29 Марта 2012

    Комментарии (18)
  9. Куча / Говнокод #9604

    +122

    1. 1
    http://s006.radikal.ru/i213/1203/4a/bd0bfaac05e6.jpg

    Очень хочется посмотреть что это за эксепшн...http://clck.ru/0kyq9

    bot, 04 Марта 2012

    Комментарии (18)
  10. Java / Говнокод #9295

    +73

    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
    if (!policyIds.isEmpty()) {
        AtomicInteger recordCount = new AtomicInteger(0);  // <- WTF?!!!!
        try {
            for (final BigDecimal policyId : policyIds) {
                helper.processPolicy(policyId.longValue(), /* ещё 7 параметров */ recordCount);
            }
        } catch (IOException e) {
                    // код обработки исключения опущен
        }
        saveToFile(ctx, fileName, outputStream.toByteArray(), recordCount);
    }
    
    // А вот что делает helper.processPolicy
    if (selector.matches(policy)) {
        if (processRequestImpl(policy, ctx, fileName, outputStream, ioService, outputDir, applicationContext)) {
            recordCount.getAndAdd(1);
        }
    }

    Integer иммутабелен? Не проблема!

    roman-kashitsyn, 02 Февраля 2012

    Комментарии (18)
  11. C++ / Говнокод #9260

    +142

    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
    #include <iostream>
    
    using namespace std;
    
    int main()
    {   
        int i, n;
        cin >> n;
        int A[n];
        for(i = 0; i < n; i++)
            cin >> A[i];
        for(i = 0; i < n - 1; i++)
            swap (A[i], A [n - i + 1]); 
        for(i = 0; i < n; i++)
            cout << A[i] << " "; 
        return 0;
    }

    Помогите! Должен выводить числа массива в обратном порядкеБ а он не выводит!

    Smirnov_Alex, 30 Января 2012

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