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

    +126

    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
    public Random abstract_logic = new Random();
    ...
            private int ComplexFunctionToDetermineTheNumberOfResults(ObservableCollection<Result> rs)
            {
                int a = 0;
                for (int i = 0; i < rs.Count; i++)
                {
                    a += rs[i].Value;
                }
                double d = a / Math.PI;
                d = Math.Cos(d) * Math.Sin(a) * (Math.Cos(Math.PI) + 1);
                return abstract_logic.Next((int)d + 3) + 3;
            }

    Лаба 2.
    Наформашлепствовал 40+ файлов (Сплошной говнокод), в итоге должна получится система тестирования. В конце данной функцией определяю количество выводимых результатов.

    maksim_ovcharik, 22 Декабря 2013

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

    +128

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    //...
    for (int i = 0; i < size; i++)
    {
        //...
        if (i == size + 2) break;
        //...
    }
    //...

    Увидел у соседа в коде. Осторожность никогда не помешает :)

    MoN, 21 Декабря 2013

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

    +138

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Control authorizationPanel= iddbd
          .Controls.Cast<Control>().Where(x => x.Name == "panelMaxim").FirstOrDefault()
          .Controls.Cast<Control>().Where(x => x.Name == "panelInternetB").FirstOrDefault()
          .Controls.Cast<Control>().Where(x => x.Name == "panelPassiveIB").FirstOrDefault()
          .Controls.Cast<Control>().Where(x => x.Name == "panelPhone").FirstOrDefault();

    не, ну а как его еще достать? У нас это квест такой на работе - "Найди контрол" называется

    taburetka, 18 Декабря 2013

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    var lines = content.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).ToList();
    
    // remove first and last tags
    lines = lines.Skip(2).Take(lines.Count - 3).ToList();           //    <------------   ОНО
    for (var i = 0; i < lines.Count; i++)
    {
            // remove one indent from each line
            lines[i] = lines[i].Substring(indentation, lines[i].Length - indentation);
    }

    Покоробило от такого подхода...
    Я бы написал for от 1 до lines.Count-1 :)

    ddv_demon, 17 Декабря 2013

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

    +137

    1. 1
    var romans = "I II III IV".Split(' ');

    Rez, 17 Декабря 2013

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

    +137

    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 (!string.IsNullOrEmpty(date))
    			{
    				var result = date.Split('.');
    				filter.TenderDate.Start = new DateTime(
    					Convert.ToInt16(result[2]),
    					Convert.ToInt16(result[1]),
    					Convert.ToInt16(result[0]),
    					0,
    					0,
    					0);
    				filter.TenderDate.End = new DateTime(
    					Convert.ToInt16(result[2]),
    					Convert.ToInt16(result[1]),
    					Convert.ToInt16(result[0]),
    					23,
    					59,
    					59);
    			}

    Парсинг дат? Не, не слышал.

    xumix, 14 Декабря 2013

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

    +135

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $(function () {
    		var objects = [
    		@foreach (var item in Model.PlannedObjectSet)
      {
    			<text>{ Address: '@item.Address', Name: '@item.Name', Id: @item.Id, date: '@item.PlannedStartDate', type: @item.ObjectType, Coords: @(item.Coords ?? "null") }@(item == Model.PlannedObjectSet.Last() ? "" : ",")</text>
      }
    		];
    		$('#map').tenderMap({mode:'p', zoom:10, center:[55.83, 37.58]});
    		$('#map').tenderMap('showData', objects);
    	});

    Вот такая вот сериализация в JSON встретилась мне сегодня в коде Razor view

    xumix, 14 Декабря 2013

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

    +133

    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
    var firstLocation = new Tuple<Point, Point>(new Point(12, 444 - 38), new Point(30, 446 - 38));
    var secondLocation = new Tuple<Point, Point>(new Point(12, 464 - 38), new Point(30, 464 - 38));
    var thirdLocation = new Tuple<Point, Point>(new Point(12, 486 - 38), new Point(30, 484 - 38));
    
    var first = new Tuple<Control, Control>(chbDimaGaugeNewContractPS, lblDimaGaugeNewContractPS);
    var second = new Tuple<Control, Control>(chbDimaGaugeNewContractIBanking, lblDimaGaugeNewContractIBanking);
    var third = new Tuple<Control, Control>(chbDimaGaugeNewContractActivePS, lblDimaGaugeNewContractActivePS);
    
    var controls = new List<Tuple<Control, Control>> { first, second, third };
    var points = new List<Tuple<Point, Point>> { firstLocation, secondLocation, thirdLocation };
    
    int i = 0;
    
    foreach (var t in controls.Where(x => !x.Item1.Enabled))
    {
      t.Item1.Location = points[i].Item1;
      t.Item2.Location = points[i].Item2;
      i++;
    }

    кортежи в .NET - хорошо или плохо?

    taburetka, 06 Декабря 2013

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

    +135

    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
    string str = Console.ReadLine();
    int k = str.length; int n = 0;
    
    for (int i = 0; i< k; i=i+1)
    {
    	if (str[i] == ' ')
    		n = n + 1;
    }
    
    string[] arr = new string[n+1]();
    
    for (int i = 0;i<n+1;i=i+1)
    {
    	arr[i]='';
    }
    for (int i = 0;i<n+1;i=i+1)
    {
    	int a = str.IndexOf(' ');
    	string b = str.Substring(0,a);
    	arr[i] = b;
    	if (i != n)
    		str = str.Remove(0,a+1);
    	else
    		str = str.Remove(0,a);
    }
    
    for (int i = 0;i<n+1;i=i+1)
    {
    	str = str + arr[i] + ' ';
    }
    str = str.Remove(k-2,1);

    Православная функция Split() по пробелу:
    1. Объявляем необходимые переменные;
    2. Считаем количество пробелов;
    3. Заполняем массив пустыми строками (ВАЖНО!!!);
    4. Ищем в исходной строке пробелы, записываем в массив подстроку, удалям подстроку с пробелом из исходной строки;
    5. Восстанавливаем исходную строку по эелементам массива (ВАЖНО!!!).

    NitrOxygeN, 05 Декабря 2013

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

    +133

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public Normalizer(Int32 totalElementsCount)
    {
        _totalElementsCount = totalElementsCount;
        _delta = Int32.MaxValue / (2 * totalElementsCount);
        if (_delta == 0)
            throw new OverflowException("Too much normalizated records.");
    }

    Осталось от старых разработчиков. Долго не могли понять, почему кидается DivideByZeroException

    botinko, 05 Декабря 2013

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