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

    +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
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    /*FuckingMagic*/
    public static T[] GetT<T>(int _RepeatCount, Func<IExpression, T[]> _GetT, IExpression[] _Expressions) {
    	T[] __outbytes;
    	T[][] __tmp_bytes;
    	int __offset = 0, __tmp_sz = 0, __i = 0, __j = 0, __ex_l = _Expressions.Length;
    	__ex_l = _Expressions.Length;
    	__tmp_bytes = new T[__ex_l * _RepeatCount][];
    	for ( __j = 0; __j < _RepeatCount; __j++ )
    		for ( __i = 0; __i < __ex_l; __i++ )
    			__tmp_bytes[__j * __ex_l + __i] = _GetT(_Expressions[__i]);
    	__j = __tmp_bytes.Length;
    	for ( __i = 0; __i < __j; __tmp_sz += __tmp_bytes[__i].Length, __i++ ) ;
    	__outbytes = new T[__tmp_sz];
    	for ( __i = 0; __i < __j; __i++ ) {
    		__tmp_sz = __tmp_bytes[__i].Length;
    		Array.Copy(__tmp_bytes[__i], 0, __outbytes, __offset, __tmp_sz);
    		__tmp_bytes[__i] = null;
    		__offset += __tmp_sz;
    	}
    	return __outbytes;
    }

    С тех пор я всегда пишу код трезвым.

    kasthack, 14 Марта 2013

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

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public double Supremum()
    {
    	HazardEstimation intensityEstimation = new IntensityEstimation(Sample, new EpanechnikovKernel(), SmoothingParameterMethod.Asymptotic);
    	var s = new List<double>(Sample.Size);
    	for (int i = 0; i < Sample.Size; i++)
    	s.Add(Math.Abs(intensityEstimation.NonParametricEstimation(Sample[i].Value) - rv.h(Sample[i].Value)));
    	return s.Max();
    }

    Дипломники не ищут легких путей

    zontar, 13 Марта 2013

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

    +113

    1. 1
    http://habrahabr.ru/post/172129/

    «Мне нужен был online-сервис для генерации GUID»

    Пожалуйста, подключитесь к интернету, чтобы сгенерировать гуид. Что дальше? Конкатенация строк через RESTful сервер в облаке амазона?

    vse_govno, 10 Марта 2013

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

    +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
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    private static string SimplifyPath(string path)
    {
    	var dirs = path.Split("\\".ToCharArray());
    
    	var absolutePath = new List<string>();
    	foreach (var dir in dirs)
    	{
    		if (dir == "..")
    		{
    			absolutePath.RemoveAt(absolutePath.Count - 1);
    			continue;
    		}
    		absolutePath.Add(dir);
    	}
    
    	var result = string.Empty;
    
    	for (int i = 0; i < absolutePath.Count - 1; ++i)
    	{
    		result += absolutePath[i];
    		result += "\\";
    	}
    
    	result += absolutePath[absolutePath.Count - 1];
    
    	return result;
    }

    Path.GetFullPath? Нет, мы не ищем легких путей.

    Cpp, 07 Марта 2013

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

    +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
    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
    [WebMethod]
            public void runCompareService(string mAuthToken, int documentId, int origVerNum, int revisedVerNum)
            {
                //string result = null;
                DirectoryInfo tmpDirInfo = getTempDirectoryPath(documentId);
                try
                {
                    //authToken = authClient.AuthenticateUser(username, password);
                    authToken = mAuthToken;
                    otAuth.AuthenticationToken = authToken;
    
                    try
                    {
                        string origFilePath = String.Format(tmpFilePath, tmpDirInfo.ToString(), origVerNum);
                        string revisedFilePath = String.Format(tmpFilePath, tmpDirInfo.ToString(), revisedVerNum);
                        string resultFilePath = String.Format(tmpResFilePath, tmpDirInfo.ToString(), origVerNum, revisedVerNum);
    
                        string origContextId = getDocContextId(documentId, origVerNum);
                        string revisedContextId = getDocContextId(documentId, revisedVerNum);
    
                        try
                        {
                            downlodFileByContextId(origContextId, origFilePath);
                            downlodFileByContextId(revisedContextId, revisedFilePath);
                            try
                            {
                                doCompare(origFilePath, revisedFilePath, resultFilePath);
                                try
                                {
                                    DownloadToBrowser(resultFilePath);
                                    
                                    //uploadResultToCS(targetId, resultFilePath);
                                }
                                catch (Exception e)
                                {
                                    throw new Exception(String.Format("Failed to Download To Browser. Error: {0}", e.ToString()));
                                }
                            }
                            catch (Exception e)
                            {
                                throw new Exception(String.Format("Failed to do compare method . Error: {0}", e.ToString()));
                            }
                        }
                        catch (Exception e)
                        {
                            throw new Exception(String.Format("Failed to create and download file. Error: {0}", e.ToString()));
                        }
                    }
                    catch (Exception e)
                    {
                        throw new Exception("Failed to get Context ID for version Exeption details: " + e.ToString());
                    }
    
                }
                catch (Exception e)
                {
                    throw new Exception("Failed to auth user. Exeption details: " + e.ToString());
                }
                finally
                {
                    docManClient.Close();
                    contentServiceClient.Close();
                    if (Directory.Exists(tmpDirInfo.ToString()))
                    {
                        tmpDirInfo.Delete(true);
                    }
                }
                
            }

    Landing, 04 Марта 2013

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

    +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
    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
    using System;
    using System.Windows.Forms;
    using System.Collections.Generic;
    using System.Text;
    using System.Xml.Linq;
    
    namespace SplitSpace {
      class Program  {
        static void Main(string[] args) { 
            test();
        }
      
        static void test() {
          if(testfun(0, 0, 3, 1020, 0.05*180/Utils.PI, 1,  40, 5.80020838542985, 5.80020838542985, 0.0125032560359095)) return;
          if(testfun(0, 0, 3, 1020, 0.05*180/Utils.PI, 2,  5, 1.75, 9.85005209635745, 0.00156290700448869)) return;
          if(testfun(0, 0, 3, 1020, 0.05*180/Utils.PI, 3,  1.5, 0.0375078144536192, 0.0375078144536192, 0.000468872101346607)) return;
          if(testfun(0, 0, 3, 219, 0.00, 1,  15.000, 4.900000000, 4.900000000, 0.000000000)) return;
          if(testfun(0, 0, 3, 219, 0.50, 1,  15.000, 4.900000415, 4.900000415, 0.000142791)) return;
          if(testfun(0, 0, 3, 219, 5.00, 1,  15.000, 4.900415674, 4.900415674, 0.014290277)) return;
          if(testfun(0, 0, 3, 219, 5.10, 1,  15.000, 4.900441130, 4.900441130, 0.014868082)) return;
          if(testfun(0, 0, 3, 219, 5.90, 1,  15.000, 4.900683170, 4.900683170, 0.019903983)) return;
          // Спустя 8369 строчек
          // ...
          // ...
          // ...
          if(testfun(2, 1, 4, 1420, 55.00, 2,  7.000, 5.512975201, 5.512975201, 1.316853521)) return;
          if(testfun(2, 1, 4, 1420, 60.00, 2,  7.000, 5.817691454, 5.817691454, 1.558845727)) return;
          if(testfun(2, 1, 4, 1420, 66.00, 2,  7.000, 6.589343466, 6.589343466, 1.708953962)) return;
          if(testfun(2, 1, 4, 1420, 75.00, 2,  7.000, 7.385125168, 7.385125168, 2.367207113)) return;
          if(testfun(2, 1, 4, 1420, 85.10, 2,  7.000, 8.438873737, 8.438873737, 3.248627191)) return;
          if(testfun(2, 1, 4, 1420, 89.00, 2,  7.000, 8.848026526, 8.848026526, 3.610990132)) return;
          if(testfun(2, 1, 4, 1420, 89.99, 2,  7.000, 8.932590260, 8.932590260, 3.699354242)) return;
          if(testfun(2, 1, 4, 1420, 90.00, 2,  7.000, 8.932590181, 8.932590181, 3.700000000)) return;
    
          MessageBox.Show("OK!"); 
        }
    
        static bool testfun(int dir, int coolType, int hotType, double dia, double angG, int angType,  double Rad, double Tan1, double Tan2, double Bis) {
          // тут всякие тесты
          // ...
          // ...
          // ...
          return false;
        }
    
      } 
    }

    diimdeep , 04 Марта 2013

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

    +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
    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
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    namespace data_base
    { public class DatA
    { public struct DATA
    { public struct Yslovie { public string yslovie; public bool ActivE;}
    public Yslovie yslovie1;
    public Yslovie yslovie2;
    public Yslovie yslovie3;
    public string deistvie;};
    public DATA.Yslovie yslovie1 = new DATA.Yslovie();
    public DATA.Yslovie yslovie2 = new DATA.Yslovie();
    public DATA.Yslovie yslovie3 = new DATA.Yslovie();
    public DATA[] BD = new DATA[5];
    public void инициализация_БД()
    { BD[0].yslovie1.yslovie = "поставщик проверенный"; BD[0].yslovie1.ActivE = false;
    BD[0].yslovie2.yslovie = "товар качественный"; BD[0].yslovie2.ActivE = false;
    BD[0].yslovie3.yslovie = "цена приемлемая"; BD[0].yslovie3.ActivE = false;
    BD[0].deistvie = "Поставщик подходит";
    BD[1].yslovie1.yslovie = "поставщик давно на рынке"; BD[1].yslovie1.ActivE = false;
    BD[1].yslovie2.yslovie = "жалоб на поставщика не было"; BD[1].yslovie2.ActivE = false;
    BD[1].yslovie3.yslovie = null; BD[1].yslovie3.ActivE = false;
    BD[1].deistvie = "поставщик проверенный";
    BD[2].yslovie1.yslovie = "есть рекомендации от других заказчиков"; BD[2].yslovie1.ActivE = false;
    BD[2].yslovie2.yslovie = "поставка производится в срок"; BD[2].yslovie2.ActivE = false;
    BD[2].yslovie3.yslovie = "товар не получает дефектов в ходе транспатрировки"; BD[2].yslovie3.ActivE = false;
    BD[2].deistvie = "жалоб на поставщика не было";
    BD[3].yslovie1.yslovie = "товар сертифицирован"; BD[3].yslovie1.ActivE = false;
    BD[3].yslovie2.yslovie = "товар прощел государственные экспертизы"; BD[3].yslovie2.ActivE = false;
    BD[3].yslovie3.yslovie = null; BD[3].yslovie3.ActivE = false;
    BD[3].deistvie = "товар качественный";
    BD[4].yslovie1.yslovie = "цена чуть ниже чем у других поставщиков"; BD[4].yslovie1.ActivE = false;
    BD[4].yslovie2.yslovie = null; BD[4].yslovie2.ActivE = false;
    BD[4].yslovie3.yslovie = null; BD[4].yslovie3.ActivE = false;
    BD[4].deistvie = "цена приемлемая";
    }
    public void Констотация_факта(int i)
    { switch (i)
    { case 1: if (BD[0].yslovie1.ActivE == true) BD[0].yslovie1.ActivE = false;
    else BD[0].yslovie1.ActivE = true; break;
    case 2: if (BD[0].yslovie2.ActivE == true) BD[0].yslovie2.ActivE = false;
    else BD[0].yslovie2.ActivE = true; break;
    case 3: if (BD[0].yslovie3.ActivE == true) BD[0].yslovie3.ActivE = false;
    else BD[0].yslovie3.ActivE = true; break;
    case 4: if (BD[1].yslovie1.ActivE == true) BD[1].yslovie1.ActivE = false;
    else BD[1].yslovie1.ActivE = true; break;
    case 5: if (BD[1].yslovie2.ActivE == true) BD[1].yslovie2.ActivE = false;
    else BD[1].yslovie2.ActivE = true; break;
    case 6: if (BD[1].yslovie3.ActivE == true) BD[1].yslovie3.ActivE = false;
    else BD[1].yslovie3.ActivE = true; break;
    case 7: if (BD[2].yslovie1.ActivE == true) BD[2].yslovie1.ActivE = false;
    else BD[2].yslovie1.ActivE = true; break;
    case 8: if (BD[2].yslovie2.ActivE == true) BD[2].yslovie2.ActivE = false;
    else BD[2].yslovie2.ActivE = true; break;
    case 9: if (BD[2].yslovie3.ActivE == true) BD[2].yslovie3.ActivE = false;
    else BD[2].yslovie3.ActivE = true; break;
    case 10: if (BD[3].yslovie1.ActivE == true) BD[3].yslovie1.ActivE = false;
    else BD[3].yslovie1.ActivE = true; break;
    case 11: if (BD[3].yslovie2.ActivE == true) BD[3].yslovie2.ActivE = false;
    else BD[3].yslovie2.ActivE = true; break;
    case 12: if (BD[3].yslovie3.ActivE == true) BD[3].yslovie3.ActivE = false;
    else BD[3].yslovie3.ActivE = true; break;
    case 13: if (BD[4].yslovie1.ActivE == true) BD[4].yslovie1.ActivE = false;
    else BD[4].yslovie1.ActivE = true; break;
    case 14: if (BD[4].yslovie2.ActivE == true) BD[4].yslovie2.ActivE = false;
    else BD[4].yslovie2.ActivE = true; break;
    case 15: if (BD[4].yslovie3.ActivE == true) BD[4].yslovie3.ActivE = false;
    else BD[4].yslovie3.ActivE = true; break;}
    }}}

    оставлю тут

    Psilon, 04 Марта 2013

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

    +134

    1. 1
    2. 2
    3. 3
    4. 4
    public void Children_OnAdd(object sender, EventArgs e)
    {
       ((MyEventArgs<Document>)e).D.Parent = this;
    }

    taburetka, 03 Марта 2013

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

    +131

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    public class UserData : EventArgs {
          public int UserCod { get; set; }
          public string Name { get; set; }
    
          public UserData(DataRow dataRow)
          {
             UserCod = (int)(decimal)dataRow["user_cod"];
             Name = (string)dataRow["name"];
          }
    }

    Во время рефакторинга появилось сообщение от VS UserData нельзя привести к типу UserData...
    Заглянули в один из классов UserData...
    теперь понятно откуда запах)))

    dukhovnyi, 02 Марта 2013

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

    +128

    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
    /// <summary>
            /// Проверка нажатия 2 клавиш (напрмер: Ctrl+W)
            /// </summary>
            /// <param name="firstKey">Первая клавиша</param>
            /// <param name="hotKey">Сочетание из БД</param>
            /// <param name="e">Аргументы события нажатия клавиши</param>
            /// <param name="Scope">Область видимости</param>
            /// <returns>Действие</returns>
            private static string CheckMultipleKeyPress(string firstKey, DBHotKeys_new hotKey, KeyEventArgs e, HotKeyScope Scope)
            {
                System.Text.StringBuilder concat = new System.Text.StringBuilder();
                if (!string.IsNullOrEmpty(PreviousKey))
                {
                    concat.Append('+');
                }
                if (!string.IsNullOrEmpty(firstKey))
                {
                    concat.Append(firstKey).Append('+');
                }
                if (!string.IsNullOrEmpty(PreviousKey))
                {
                    concat.Append(PreviousKey).Append('+');
                }
                PreviousKey = ReplaceKeyCode(e.KeyCode);
    
                if (e.KeyCode != Keys.ControlKey)
                {
                    concat.Append(ReplaceKeyCode(e.KeyCode));
                }
    
                //if (concat[0] == '+')
                //{
                //    concat = new System.Text.StringBuilder(concat.ToString().Substring(1));
                //}
    
                if ((hotKey.Scope == Scope) && (concat.ToString().Equals(hotKey.HotKeyString)))
                {
                    PreviousKey = string.Empty;
                    return hotKey.Action;
                }
                PreviousKey = string.Empty;
                return string.Empty;
            }

    HLW, 02 Марта 2013

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