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

    +117

    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    _Filter             (ref DataTable Dt)
            {
                if (Dt.Columns.Contains("id_rvobjecttype") && Dt.Columns.Contains("id_rvdevicestatus") && Dt.Columns.Contains("id_storage") && 
                   (RvObjectType > 0 || Status > 0 || Storage > -1))
                {
                    DataRow[]   rows    =   Dt.Select(string.Format(
                        "((id_rvobjecttype = {0} or not {1}) and (id_rvdevicestatus = {2} or not {3}) and (id_storage = {4} or not {5})) or id = {6}", 
                        fRvObjectType, fRvObjectType > 0, (int)Status, Status > 0, Storage, Storage > -1, IgnoreId));
    
                    Dt                  =   rows.Length > 0 ? rows.CopyToDataTable() : Dt.Clone();
                }
            }

    gcoder, 29 Февраля 2012

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

    +123

    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
    public static void DecToHex(int din) //Перевод из десятичной системы в шестнадцатеричную
            {
                
                string hout="", buk="";
                int q,r;
    
    
                while (din>0)
                {
                    q = din % 16;
                   
                    din = din / 16;
                    if (q >= 0 && q < 10)
                    
                        buk = q.ToString();
                    
                    else
                    if (q == 10)
                        buk = "A";
                    else if (q == 11)
                        buk = "B";
                    else if (q == 12)
                        buk = "C";
                    else if (q == 13)
                        buk = "D";
                    else if (q == 14)
                        buk = "E";
                    else if (q == 15)
                        buk = "F";
                   
                    hout =hout + buk;
    
                }
                Console.WriteLine(MyReverseString(hout));
    
                
    
            }

    Метод переводит из десятичной системы в шестнадцатеричную. Метод MyReverseString собственный метод переворота строки.

    Hank, 28 Февраля 2012

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

    +106

    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 static boolean isNumeric(string word)
    {
    	char[] charArray = word.toCharArray();
    	
    	foreach (char letter in charArray)
    	{
    		if (!(letter == '0' || letter == '1' || letter == '2' || letter == '3' || letter == '4' || letter == '5' || letter == '6' || letter == '7' || letter == '8' || letter == '9'))
    		{
    			return false;
    		}
    		return true;
    	}
    }

    За одно и подскажите правильный, оптимальный вариант этой функции

    vistefan, 28 Февраля 2012

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

    +109

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    ...
    XElement body = new XElement(obj.Body);
    
    obj.HasText = body.Element("text") != null;
    obj.HasPhoto = files!=null && body.Element("files");
    
    obj.Body = new XElement(body);
    ...

    Lourian, 27 Февраля 2012

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

    +956

    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
    using System;
    
    namespace Угадай_цифру
    {
    class Program
     { 
    struct IntNull
     {
    public static Random Rand = new Random();
    public static int CompInt;
    public static string UserInt;
     }
    
    public static void Main(string[] args)
     {
    try 
     {
     Console.WriteLine("Игра: отгадай число.");
     Console.Write("Правила игры просты, компьютер загадывает цисло от одного до 10, вы должны его отгадать.");
     Console.ReadLine();
     Console.Clear();
     GetInt();
     } 
    catch (Exception ex) 
     {
     Console.WriteLine(ex.Message);
     Console.ReadLine();
     }
     }
    
    public static void GetInt()
     {
    try 
     {
     IntNull.CompInt = IntNull.Rand.Next(0, 10);
     Console.Clear();
     Console.WriteLine("Комптютер загадал число, отгадайте его");
    string User = Console.ReadLine();
     IntNull.UserInt = User;
     Console.Clear();
     GetProverka();
     } 
    catch (Exception ex) 
     {
     Console.WriteLine(ex.Message);
     Console.ReadLine();
     }
     }
    
    public static void GetProverka()
     {
    try 
     {
    if(IntNull.CompInt == Convert.ToInt32(IntNull.UserInt))
     {
     Console.Clear();
     Console.WriteLine("Молодец, правильный ответ {0}", IntNull.CompInt);
     Console.WriteLine("Нажмите Enter для продолжения");
     Console.ReadLine();
     GetInt();
     }
    else
     {
     Console.Clear();
     Console.WriteLine("Лошара, ответ неверный, правильный ответ {0}", IntNull.CompInt);
     Console.WriteLine("Нажмите Enter для продолжения");
     Console.ReadLine();
     GetInt();
     }
     } 
    catch (Exception ex) 
     {
     Console.WriteLine(ex.Message);
     Console.ReadLine();
     }
     } 
     }
    }

    Один программист выложил на малоизвестном сайте

    IIIypuk, 27 Февраля 2012

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

    +964

    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
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace ConsoleApplication7
    {
    
        class Program
        {
            static void Main(string[] args)
            {
            op: int b, c, d, e;
                c = 0;
                e = 1;
                Console.WriteLine("a - посчитать сумму");
                Console.WriteLine("b - посчитать произведение");
                Console.Write("вариант=");
                string p = Console.ReadLine();
                if (p == "a")
                {
                ok: Console.Write("С какого числа считаем:"); d = Convert.ToInt32(Console.ReadLine());
                    if (d == 0) goto op;
                    else
                    {
                        Console.Write("Число до которого считаем:"); b = Convert.ToInt32(Console.ReadLine());
                        for (int a = d; a <= b; a++)
                        {
                            c = c + a;
                            Console.WriteLine(c);
                        }
                        Console.WriteLine("Сумма цифр от " + d + " до " + b + " = " + c);
                        Console.ReadLine();
                        goto ok;
                    }
                }
                if (p == "b")
                {
                ol: Console.Write("С какого числа считаем:"); d = Convert.ToInt32(Console.ReadLine());
                    if (d == 0) goto op;
                    else
                    {
                        Console.Write("Число до которого считаем:"); b = Convert.ToInt32(Console.ReadLine());
                        for (int a = d; a <= b; a++)
                        {
                            e = e * a;
                            Console.WriteLine(e);
                        }
                        Console.WriteLine("Произведение чисел от " + d + " до " + b + " = " + e);
                        Console.ReadLine();
                        goto ol;
                    }
                }
                else goto op;
            }
        }
    }

    Нашёл на одном форуме

    high-five, 25 Февраля 2012

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

    +113

    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
    public partial class EditorForm : Form
    {
    	private List<IEditObject> _readOnlyObjects;
    	public IEditObject EditValue {get; set;}
    	
    	public EditorForm(IEditObject value, List<IEditObject> readOnlyObjects)
    	{
    		if (value != null)
    		{
    			EditValue = value;
    		}
    		
    		if (readOnlyObjects != null && readOnlyObjects.Count > 0)
    		{
    			_readOnlyObjects = readOnlyObjects;
    		}
    	}
    }

    Во избежание лишних присвоений.

    ICELedyanoj, 23 Февраля 2012

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

    +950

    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
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    
    namespace bibl2
    {
        public class DBS_BUTTON : Button
        {
            static DBS_BUTTON()
            {
            }
            protected void OnClick(object sender, EventArgs e)
            {
                Click(sender, e);
            }
        }
    }

    Rusmikle, 20 Февраля 2012

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

    +964

    1. 1
    2. 2
    3. 3
    4. 4
    private static int CompareWidgetsByOrder(Widget x, Widget y)
    {
          return x == null ? y == null ? 0 : 1 : y == null ? 0 : x.order > y.order ? -1 : x.order < y.order ? 1 : 0;
    }

    Вот до чего доводит стремление к компактности кода.

    nomad99111, 19 Февраля 2012

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

    +116

    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
    class MyClass
    {
      private List<MyObject> _collection = new List<MyObject>();
      public int SelectedObjectIndex { get; set; }
    	
      private void SelectionChanged( List<MyViewObject> selectedObjects )
      {
        bool bFound = false;
    
        foreach (MyViewObject item in objects)
        {
          if (!bFound)
          {
            for (int i = 0; i < _collection.Count; i++)
            {
              if (item.Tag != null && item.Tag is MyObject)
              {
                if (_collection[i] == item.Tag)
                {
                  this.SelectedObjectIndex = i;
                  bFound = true;
                  break;
                }
              }
            }
          }
          else
          {
            break;
          }
        }
    
        if (!bFound)
        {
          SelectedObjectIndex = -1;
        }
      }
    }

    Просто кладезь какой-то.
    Я переделал исходный код, чтобы было понятнее кто здесь кому и не нужно было разбираться со сложной структурой классов, которая используется в исходнике.
    Все имена классов вымышленные, на них не нужно обращать внимание - все лишь для демонстрации подхода к построению циклов и поиску объектов в коллекциях.

    ICELedyanoj, 17 Февраля 2012

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