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

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

    +66

    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
    1. import java.security.MessageDigest;
       2. import java.security.NoSuchAlgorithmException;
       3.  
       4. public final class MD5Util {
       5.   public static final int MASK = 0xff;
       6.   public static final int RADIX = 16;
       7.  
       8.   private MD5Util() {
       9.   }
      10.  
      11.   public static String encrypt(String str) {
      12.     try {
      13.       MessageDigest md = MessageDigest.getInstance("MD5");
      14.       md.update(str.getBytes());
      15.       return byteToHexString(md.digest());
      16.     } catch (NoSuchAlgorithmException e) {
      17.       //doing smth
      18.     }
      19.   return null;
      20.   }
      21.  
      22.   public static String encrypt(byte[] data) {
      23.     try {
      24.       MessageDigest md = MessageDigest.getInstance("MD5");
      25.       md.update(data);
      26.       return byteToHexString(md.digest());
      27.     } catch (NoSuchAlgorithmException e) {
      28.       //doing smth
      29.     }
      30.     return null;
      31.   }
      32.  
      33.   public static String byteToHexString(byte[] hash) {
      34.     StringBuffer buf = new StringBuffer(hash.length * 2);
      35.  
      36.     for (byte b : hash) {
      37.       if ((b & MASK) < RADIX) {
      38.         buf.append("0");
      39.       }
      40.  
      41.       buf.append(Long.toString(b & MASK, RADIX));
      42.     }
      43.  
      44.     return buf.toString();
      45.   }
      46. }

    hromjo, 01 Августа 2010

    Комментарии (2)
  3. Java / Говнокод #3705

    +66

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    Link link = new Link( element );
    
    		if( !Browser.getBrowser().isElementPresent( link.getLocator() ) )
    		{
    			return false;
    		}
    		else
    		{
    			return true;
    		}

    зачэм так?

    gavrs, 15 Июля 2010

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

    +66

    1. 1
    2. 2
    3. 3
    if (xobj.getStringProp() == "N") {
        //do it
    }

    Ну а что тут скажешь?

    lotik, 10 Июня 2010

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

    +66

    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
    //Функция перевода с std::string в System::String; .netFramework 3.5  
     
     String^ stringToString(string str)
                   {
                        TextBox^ strS=gcnew TextBox;
                        strS->Clear();
                        string cmps="АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя";
                        TextBox^ cmpS=gcnew TextBox;
                        cmpS->Text="АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя";
                        for(int i=0;i<str.size();i++)
                        {
                             for(int j=0;j<cmps.size();j++)
                             {          
                                  if(str[i]==cmps[j])strS->Text=strS->Text+cmpS->Text->Substring(j,1); 
                             }
                        }
                        return strS->Text;
                   }

    он работает :)))

    idec, 03 Марта 2010

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

    +65.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    //какой-то .h-файл
    namespace Error {
    	struct Put_error{
    		const char * Message;
    		Put_error(const char * e) { Message = e; }
    	};
    ...
    
    //в каком-то методе в другом файле
    	  string msg = "Error: cannot open input file " + string(fileInputName) + "\n";
    	  throw Error::Put_error(msg.c_str());

    Lexey, 03 Ноября 2009

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

    +65.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
    template <class T>
    struct SLinkedListNode
    {
    public:
    	SLinkedListNode* m_pPrev;  ///<  Pointer to previous node.
    	SLinkedListNode* m_pNext;  ///<  Pointer to next node.
    	int Initialize();
    	int Finalize();
    };
    ...
    struct SWaiterNode : public SLinkedListNode<SContainerNode>, public SLinkedListNode<SWaiterListNode>
    {
    ...
    // container node
    struct SContainerNode
    {
    	// no members needed yet (just for masking SLinkedListNode type)
    };
    
    // container
    struct SContainer
    {
    public:
    	SLinkedListNode<SContainerNode>* m_pObjects;

    сначала делаем тимплейтный класс, параметр которого никому не нужен, а потом делаем заглушку для этого параметра.
    нормально.

    kubrinsky, 19 Февраля 2010

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

    +65.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public Date getTomorrow() {
            try {
                Thread.sleep(1000 * 60 * 60 * 24);
                return new Date();
            } catch (Exception ex) {
                return getTomorrow();
            }
        }

    get tomorrow

    guest, 23 Апреля 2009

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

    +65.5

    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
    BOOL needToCenter = NO;
    float touchedDistance = [self getTouchedDistance];
    
    if(movedFromX < movedToX)
    {
    	if(!isIncreased)
    	{
    		needToCenter = YES;
    	}
    }
    else
    {
    	if(!isIncreased)
    	{
    		needToCenter = YES;
    	}
    }

    ohoncharuk, 22 Февраля 2010

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

    +65.5

    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
    private static String getUTF8String(byte[] b, int off, int len) {
    	// First, count the number of characters in the sequence
    	int count = 0;
    	int max = off + len;
    	int i = off;
    	while (i < max) {
    	    int c = b[i++] & 0xff;
    	    switch (c >> 4) {
    	    case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
    		// 0xxxxxxx
    		count++;
    		break;
    	    case 12: case 13:
    		// 110xxxxx 10xxxxxx
    		if ((int)(b[i++] & 0xc0) != 0x80) {
    		    throw new IllegalArgumentException();
    		}
    		count++;
    		break;
    	    case 14:
    		// 1110xxxx 10xxxxxx 10xxxxxx
    		if (((int)(b[i++] & 0xc0) != 0x80) ||
    		    ((int)(b[i++] & 0xc0) != 0x80)) {
    		    throw new IllegalArgumentException();
    		}
    		count++;
    		break;
    	    default:
    		// 10xxxxxx, 1111xxxx
    		throw new IllegalArgumentException();
    	    }
    	}
    	if (i != max) {
    	    throw new IllegalArgumentException();
    ....

    В либе работы с зипом

    Cdf-EaSy, 01 Февраля 2010

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

    +65.5

    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
    ...
    switch( a )
    {
      case false:
      {
        a=true;
      };break;
      case true:
      {
        a=false;
      };break;
      default:
      {
        a=false;
      };break;
    };
    ...

    a - буллёвная переменная.

    Говногость, 04 Сентября 2009

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