1. C# / Говнокод #11831

    +127

    1. 1
    2. 2
    3. 3
    4. 4
    while (true) {
        Console.WriteLine(answer);
        answer = process.StandardOutput.ReadLine();
    }

    Человеку нужно просто считывать команды (строки) из консоли. Делает через жопу.

    Fai, 24 Сентября 2012

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

    +138

    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
    public void Delete(CommonType type)
            { 
                label1:
                Console.Write("Enter the title of the book: ");
                string title = Console.ReadLine();
                if (title == type.Title)
                {
                    cmainlibrary.Remove(type);
                    Console.Write("Success");
                    Console.Read();
                    goto label1;
                }
                    
                else 
                {
    
                    goto label1;
                  
                }
            
            }

    sater, 24 Сентября 2012

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

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    // http://msdn.microsoft.com/en-us/library/dya2szfk%28v=VS.71%29.aspx
    
    If x = True Then   ' Compares x to the Boolean value True.
       ' Insert code to execute if x = True.
    Else
       ' Insert code to execute if x = False.
    End If

    http://msdn.microsoft.com/en-us/library/dya2szfk%28v=VS.71%29.aspx
    Учебник по языку, да

    Demetr, 21 Сентября 2012

    Комментарии (19)
  4. C# / Говнокод #11800

    +133

    1. 1
    string[] res = value.Split("$".ToCharArray(), StringSplitOptions.None);

    shtaff, 19 Сентября 2012

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

    +139

    1. 1
    Assert.That(users.Count(), Is.EqualTo(Enumerable.Empty<User>().Count()));

    rk4n, 18 Сентября 2012

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

    +140

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    private void SendFile(string root, string url, DateTime dateTimeBegin)
    {
    	if ( ... isSend ... )
    	{
    		...MoveToArchive();
    		...Dispose();
    	}
    	else
    	{
    		SendFile(root, url, dateTimeBegin);
    	}
    }

    Ну тут всё ясно...
    Если файлики отсылаются нормально, то всё работает хорошо.
    Зато если файлики не отсылаются, то начинается злая рекурсия, которая постепенно сжирает всю память :).

    ddv_demon, 13 Сентября 2012

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

    +141

    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
    internal static double GetExtendedFromBytes(byte[] bytes)
            {
                /*
                    1   15      1   63
                    s   e       i 	f
    
                        The value v of the number is given by: 
                    if 0 <= e < 32767, then v = (-1)s * 2(e-16383) * (i.f) 
                    if e = 32767 and f = 0, then v = (-1)s * Inf 
                    if e = 32767 and f <> 0, then v is a NaN
                 */
                const int memSize = 10;
                if (bytes == null)
                    throw new ArgumentNullException("bytes");
                if (bytes.Length != memSize)
                    throw new ArgumentException("Must be " + memSize + " bytes", "bytes");
    
                int s = bytes[0] >> 7;
                int e = 0x7FFF & ((bytes[0] << 8) | bytes[1]);
                int i = bytes[2] >> 7;
                ulong f = (ulong)(0x7F & bytes[2]);
                for (int j = 3; j < memSize; j++)
                {
                    f <<= 8;
                    f |= bytes[j];
                }
    
                decimal df = (decimal)f / 10000000000000000000 /* 10^19 */; // число f в формате 0.f
                double v;
                if (0 <= e && e < 32767)
                {
                    int pow = e - 16383;
                    decimal c = (s == 0 ? 1 : -1) * (decimal)Math.Pow(2, pow);
                    decimal dv = c * (i + df); // значение, полученное по формуле для x86 Extended Precision Format
    
                    if (f != 0) // HACK при вычислении по формуле искомое значение не удается получить - исправляем
                    {
                        const decimal mn = 0.0776627963145224192m; // magic number, при значениях отличных от 2^x возникает разница кратная этому значению
    
                        decimal delta = Math.Abs(dv - c);
                        decimal add = 0;
                        if (pow >= 4)
                            add = Math.Round(delta * 1.0842021724855044340074528009m); // еще magic number
                        else if (pow >= 2)
                            add = Math.Ceiling(delta);
                        else if (pow >= 0)
                            add = Math.Ceiling(delta * 10) / 10m;
                        else
                        {
                            decimal m = 10m * (decimal)Math.Pow(2, Math.Abs(pow));
                            add = Math.Ceiling(delta * m) / m;
                        }
                        if (dv > 0)
                            dv += add * mn;
                        else
                            dv -= add * mn;
                    }
                    v = (double)dv;
                }
                else if (e == 32767)
                {
                    if (f == 0)
                        v = s == 0 ? double.PositiveInfinity : double.NegativeInfinity;
                    else
                        v = double.NaN;
                }
                else
                {
                    throw new ArgumentOutOfRangeException("bytes");
                }
    
                return v;
            }

    Местные индусы постарались. Перевод 80 bit floating point в double. Причём если прочитать спецификацию IEEE-754, то код займет 3-4 строчки с простыми битовыми операциями.

    NetDeveloper, 12 Сентября 2012

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

    +142

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    /// <summary>
    /// Убирает прибамбасы, такие как формат, кондишены и т.д.
    /// </summary>
    
    public virtual void ClearFutures()
    {}

    Да просто пиздец всему будущему при вызове метода.

    grobotron, 10 Сентября 2012

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

    +104

    1. 1
    [Obsolete( "Пока не потдерживается" )]

    Каких шта приставки русски язык?

    grobotron, 10 Сентября 2012

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

    +108

    1. 1
    2. 2
    3. 3
    4. 4
    if (!"12345".Contains(Model.quarter.ToString()))
    {
        m1 = m2 = m3 = "ошибка";
    }

    Немного восхитительного кода утром в понедельник.
    Тип данных Model.quarter Int32. Код из шаблона Razor

    CrazyMORF, 10 Сентября 2012

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