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

    +774

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    Form f = new Form1();
    f.FormBorderStyle = FormBorderStyle.FixedToolWindow;
    f.WindowState = FormWindowState.Minimized;
    f.ShowInTaskbar = false;
    f.StartPosition = FormStartPosition.Manual;
    f.Location = new System.Drawing.Point(-2000, -2000);
    f.Size = new System.Drawing.Size(1, 1);
    f.Hide();
    f.Visible = false;
    f.Opacity = 0;
    Application.Run(f);

    LispGovno, 21 Марта 2015

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

    +354

    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
    private ChessField Recognize()
            {
                var output = new ChessField();
                for (int x = 0; x < 8; x++)
                {
                    for (int y = 0; y < 8; y++)
                    {
                        var xs = x*50;
                        var ys = y*50;
    
                        if (IsNeutral(bitmap.GetPixel(xs + 25, ys + 33)) && IsNeutral(bitmap.GetPixel(xs + 8, ys + 40)))
                        {
                            output.figures[y,x].kindOfFigure = Figure.KindOfFigure.Empty;
                        }
                        else
                        {
                            if ((IsWhite(bitmap.GetPixel(xs + 25, ys + 34)) ||
                                IsWhite(bitmap.GetPixel(xs + 30, ys + 25))) && !IsBlack(bitmap.GetPixel(xs + 9, ys + 42)))
                            {
                                output.figures[y, x].color = Figure.Color.White;
                                //white rec
    
                                
                                if (IsBlack(bitmap.GetPixel(xs + 25, ys + 7)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.King;
                                    continue;
                                }
                                if (!IsWhite(bitmap.GetPixel(xs + 25, ys + 32)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Queen;
                                    continue;
                                }
                                if (IsBlack(bitmap.GetPixel(xs + 25, ys + 22)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Bishop;
                                    continue;
                                }
                                if (IsBlack(bitmap.GetPixel(xs + 25, ys + 27)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Knight;
                                    continue;
                                }
                                if (IsWhite(bitmap.GetPixel(xs + 15, ys + 15)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Rook;
                                    continue;
                                }
                                output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Pawn;
    
                            }
                            else
                            {
                                output.figures[y, x].color = Figure.Color.Black;
                                //black rec
                                if (!IsBlack(bitmap.GetPixel(xs + 25, ys + 25)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Bishop;
                                    continue;
                                }
                                if (!IsBlack(bitmap.GetPixel(xs + 25, ys + 28))||
                                    !IsBlack(bitmap.GetPixel(xs + 25, ys + 29)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Knight;
                                    continue;
                                }
                                if (!IsBlack(bitmap.GetPixel(xs + 25, ys + 36)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Rook;
                                    continue;
                                }
                                if (!IsBlack(bitmap.GetPixel(xs + 25, ys + 31)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.King;
                                    continue;
                                }
                                if (!IsBlack(bitmap.GetPixel(xs + 25, ys + 33)))
                                {
                                    output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Queen;
                                    continue;
                                }
                                output.figures[y, x].kindOfFigure = Figure.KindOfFigure.Pawn;
                            }
                        }
    
                    }
                }
                return output;
            }

    4 часа ночи, вино, кофе, чужой курсач, распознание шахматных фигур со скриншота типа этого

    http://download.hdd.tomsk.ru/preview/xjntlwtz.jpg

    естесно поле уже вырезано и поджато под 400 на 400 пикселей

    kegdan, 20 Марта 2015

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

    +132

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    // var doc = new Document(file);
    var stream = new MemoryStream();
    file.CopyTo(stream);
    file.Position = 0;
    stream.Position = 0;
    var doc = new Document(stream);

    Ебал в рот Spire.Doc
    Нагло жует чужие потоки
    Причем только если документ - RTF
    Какого хуя вообще?

    ebal, 18 Марта 2015

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

    +2

    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 static DateTime DateStringConvert(string dateString)
            {
                var dd = dateString.Substring(0, dateString.IndexOf('-'));
                var mm = dateString.Substring(dateString.IndexOf('-') + 1).Substring(0, dateString.IndexOf('-'));
                var yyyy = dateString.Substring(dateString.IndexOf('-') + 1).Substring(dateString.IndexOf('-') + 1)
                    .Substring(0, dateString.Substring(dateString.IndexOf('-') + 1)
                    .Substring(dateString.IndexOf('-') + 1).IndexOf(' '));
                var time = dateString.Substring(dateString.IndexOf('-') + 1).Substring(dateString.IndexOf('-') + 1)
                    .Substring(dateString.Substring(dateString.IndexOf('-') + 1)
                    .Substring(dateString.IndexOf('-') + 1).IndexOf(' ') + 1);
    
                var hh = time.Substring(0, time.IndexOf(':'));
                var MM = time.Substring(time.IndexOf(':') + 1);
                return new DateTime(
                    Convert.ToInt16(yyyy),
                    Convert.ToInt16(mm),
                    Convert.ToInt16(dd),
                    Convert.ToInt16(hh),
                    Convert.ToInt16(MM),
                    0);
            }

    Вот что происходит, когда не знаешь, как парсить string в DateTime. Говнокод получен от украинских фрилансеров.

    RaTT, 18 Марта 2015

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

    +131

    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
    private static List<Vessel> boosterVesselList = new List<Vessel>();
    		/// <summary>
    		/// Вернуть судно по строковому обозначению судна
    		/// </summary>
    
    		private static Vessel GetVesselByIdString(string vesselStrId)
    		{
    			Vessel findVessel = null;
    
    			// Просмотр в ускоряющем списке
    			foreach (Vessel boostVessel in boosterVesselList)
    			{
    				if (boostVessel.Name == vesselStrId)
    				{
    					findVessel = boostVessel;
    					break;
    				}
    			}
    
    			// Если в списке не нашли, ищем в БД
    			if (findVessel == null)
    			{
    				findVessel = VesselBusinessLogic.GetItemByName(vesselStrId);
    
    				if (findVessel == null)
    				{
    					findVessel = new Vessel
    					{
    						Id = -1,
    						Name = vesselStrId
    					};
    
    					findVessel.Id = PublicFunctions.AddOrUpdate(findVessel);
    					boosterVesselList.Add(findVessel);
    				}
    			}
    
    			return findVessel;
    		}

    Это один из методов класса для работы с морскими судами. Я пока не совсем понял как так и зачем так. Боже мой.... мама, роди меня обратно. Комментарии оригинальные.

    alex_lis, 17 Марта 2015

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

    +132

    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
    public static string DownloadString(string Url, bool UnZip = false)
            {
                var v = Configs.Instance.MainURL + Url;
                if (!CheckOnServer(v))
                    return "";
                using (var wb = new WebClient())
                {
                    if (UnZip)
                        v = Encoding.UTF8.GetString(IoUtils.UnZip(wb.DownloadData(v)));
                    else
                        v = wb.DownloadString(v);
                    if (v.StartsWith(((char)65279).ToString())) v = v.Substring(1);//utf8 header -_-
                }
                return v;
            }

    skydev, 12 Марта 2015

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

    +1

    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 SetValueToPrivateField<Type>(Type instance, string field, object value) {
    		if (instance != null) {
    			FieldInfo fieldInfo = typeof(Type).GetField(
    				field,
    				BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic
    			);
    				if (fieldInfo != null) {
    				fieldInfo.SetValue(instance, value);
    			}
    		}
    	}

    Публичный сеттер нарушит инкапсуляцию, поэтому будем использовать рефлексию

    "Мне нельзя ничего есть, поэтому я вставлю себе трубку прямо в живот и буду при необходимости заливать прямо туда. Но есть не буду"

    Caritas, 11 Марта 2015

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if (bonusA is RuneBonusLine && bonusB is RuneBonusLine) {
        Mix(bonusA as RuneBonusLine, bonusB as RuneBonusLine);
       } else if (bonusA is RuneBonusBomb && bonusB is RuneBonusBomb) {
        Mix(bonusA as RuneBonusBomb, bonusB as RuneBonusBomb);
       } else if (bonusA is RuneBonusBomb && bonusB is RuneBonusLine) {
        Mix(bonusA as RuneBonusBomb, bonusB as RuneBonusLine);
       } else if (bonusB is RuneBonusBomb && bonusA is RuneBonusLine) {
        Mix(bonusB as RuneBonusBomb, bonusA as RuneBonusLine);
       }

    Is/As Oriented Programming

    Caritas, 11 Марта 2015

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

    +1

    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
    public enum AdjacentCell {
       /// <summary>
       /// Сверху.
       /// </summary>
       Above = ABOVE,
       /// <summary>
       /// Снизу.
       /// </summary>
       Below = BELOW,
       /// <summary>
       /// Слева.
       /// </summary>
       Left = LEFT,
       /// <summary>
       /// Справа.
       /// </summary>
       Right = RIGHT
      }
    
      private const int ABOVE = 0;
      private const int BELOW = 1;
      private const int LEFT = 2;
      private const int RIGHT = 3;

    Мы добавили немного констант в твой енам, чтобы ты мог использовать константы, пока используешь енам

    Caritas, 10 Марта 2015

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

    +2

    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
    int a,b,c,d,e,f, k = 1;
     
     
     
     
                for (a = 0; a < 9; a++)
                    for (b = 0; b < 9; b++)
                        for (c = 0; c < 9; c++)
     
                            for (d = 0; d < 9; d++)
                                for (e = 0; e < 9; e++)
                                    for (f = 0; f < 9; f++)
                        {
                            if (a + b + c == d + e + f && a+b+c == 13)
                                k = k + 1;
                        }
      
     
     
                Console.WriteLine("кол-во комбинаций: " + k + " ");
                Console.WriteLine("кол-во билетов: " + k * k);

    Очередные лабы... God, whyyy...

    Psilon, 09 Марта 2015

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