1. VisualBasic / Говнокод #3088

    −90

    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
    ''' Список строк подключения.
    	''' 	[Max Pro]	11.04.2007	Created
    	Public Enum ConnectString
    		Grata
    		Grata6
    		KuBi
    		OneWindow
    		OneWindowStat
    		OWSite
    		Wwwsde
    		NoName
    		OleGrata
    		OleGrata6
    		OleKuBi
    		OleOneWindow
    		OleOneWindowStat
    		OleOWSite
    		OleWwwsde
    		OleNoName
    	End Enum
    	''' <summary>
    	''' Выдаёт ограниченную дату и время для t/sql; tDateTime  ∈ [1900,2078], 
    ограничивается только год, остальное остаётся вплоть до миллисекунд; переваривает все типы.
    	''' </summary>
    	''' <param name="o"></param>
    	''' <returns></returns>
    	''' <remarks>
    	''' </remarks>
    	''' <history>
    	''' 	[Max Pro]	11.04.2007	Created
    	''' 	[Max Pro]	13.04.2007	Улучшил.
    	''' 	[Max Pro]	16.04.2007	Изменил наименование tDateTime2Tsql на tDateTsql.
    	''' </history>
    	''' -----------------------------------------------------------------------------
    	Public Function tDateTsql(ByVal o) As Date
    		Dim tDate As Date
    		If bIsDateNet(o) Then tDate = o
    		If Year(tDate) < 1900 Then tDate = New Date(1900, tDate.Month, tDate.Day, tDate.Hour, tDate.Minute, tDate.Second, tDate.Millisecond)
    		If Year(tDate) > 2078 Then tDate = New Date(2078, tDate.Month, tDate.Day, tDate.Hour, tDate.Minute, tDate.Second, tDate.Millisecond)
    		tDateTsql = tDate
    	End Function
    	'''

    Енум имени максима прохорова.
    И функция конферта даты. пыгает слово улучшил

    ursus, 23 Апреля 2010

    Комментарии (6)
  2. VisualBasic / Говнокод #3087

    −91

    1. 1
    Public Const sEnter As String = Chr(13) & Chr(10)

    Нам разум не друг и ум не товарищ!
    Постоянная имени Максима Прохорова

    ursus, 23 Апреля 2010

    Комментарии (8)
  3. VisualBasic / Говнокод #3081

    −101

    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
    REM Юникод UTF-8 с сигнатурой.
    Option Compare Text
    Imports System
    Imports System.Web
    Imports ClassLibraryAll
    Namespace HandlerAll
    REM Вэб-запрос курсов валют и на какую дату.
    Public Class Course
    Implements IHttpHandler
    REM Переопределяем метод ProcessRequest.
    Public Sub ProcessRequest(ByVal oContext As System.Web.HttpContext) Implements System.Web.IHttpHandler.ProcessRequest
    '#region var
    Dim b As Boolean
    Dim iLang As Integer
    Dim tDate1 As Date
    Dim tDate2 As Date
    Dim dD1 As Double
    Dim dD2 As Double
    Dim dE1 As Double
    Dim dE2 As Double
    Dim sAnswer As String 'текст ответа
    Dim sResponse As String 'текст респонса
    Dim oWebClient As New System.Net.WebClient
    Dim oRegExDate1 As New System.Text.RegularExpressions.Regex("target\=_blank\s*>с \d+\.\d+\.\d+\s*<\/A>\s*<\/td>\s*<td>")
    Dim oRegExInDate1 As New System.Text.RegularExpressions.Regex("\d+\.\d+\.\d+")
    Dim oRegExDate2 As New System.Text.RegularExpressions.Regex("target\=_blank\s*>с \d+\.\d+\.\d+\s*<\/A>\s*<\/td>\s*<\/tr>")
    Dim oRegExInDate2 As New System.Text.RegularExpressions.Regex("\d+\.\d+\.\d+")
    Dim oRegExD1 As New System.Text.RegularExpressions.Regex("США<\/td>\s*<td><\/td>\s*<td\sclass\=""digit""\salign\=""right"">\d+,\d+ <\/td>")
    Dim oRegExInD1 As New System.Text.RegularExpressions.Regex("\d+,\d+")
    'Dim oRegExD2 As New System.Text.RegularExpressions.Regex(">\d+,\d+ <IMG\salt\='.+'\sborder\=0\sheight\=8\shspace\=2\ssrc\=\/images\/.+\.gif\swidth\=7><\/td>\s*<\/tr>\s*<tr>\s*<td>")
    Dim oRegExD2 As New System.Text.RegularExpressions.Regex(">\d+,\d+ <img\salt\='.+'\sborder\=""0""\sheight\=""8""\shspace\=""2""\ssrc\=""\/images\/.+\.gif""\swidth\=""7""><\/td>\s*<\/tr>\s*<tr>\s*<td>")
    Dim oRegExInD2 As New System.Text.RegularExpressions.Regex("\d+,\d+")
    Dim oRegExE1 As New System.Text.RegularExpressions.Regex("Евро<\/td>\s*<td><\/td>\s*<td\sclass\=""digit""\salign\=""right"">\d+,\d+ <\/td>")
    Dim oRegExInE1 As New System.Text.RegularExpressions.Regex("\d+,\d+")
    'Dim oRegExE2 As New System.Text.RegularExpressions.Regex(">\d+,\d+ <IMG\salt\='.+'\sborder\=0\sheight\=8\shspace\=2\ssrc\=\/images\/.+\.gif\swidth\=7><\/td>\s*<\/tr>\s*<tr>\s*<td\s")
    Dim oRegExE2 As New System.Text.RegularExpressions.Regex(">\d+,\d+ <img\salt\='.+'\sborder\=""0""\sheight\=""8""\shspace\=""2""\ssrc\=""\/images\/.+\.gif""\swidth\=""7""><\/td>\s*<\/tr>\s*<tr>\s*<td\s")
    Dim oRegExInE2 As New System.Text.RegularExpressions.Regex("\d+,\d+")
    '#endregion var
    '#region ini
    iLang = iInteger(oContext.Request.QueryString("iLang"))
    Try
    sAnswer = System.Text.Encoding.UTF8.GetString(oWebClient.DownloadData("http://cbr.ru/"))
    tDate1 = oRegExInDate1.Match(oRegExDate1.Match(sAnswer).Value).Value
    tDate2 = oRegExInDate2.Match(oRegExDate2.Match(sAnswer).Value).Value
    dD1 = oRegExInD1.Match(oRegExD1.Match(sAnswer).Value).Value
    dD2 = oRegExInD2.Match(oRegExD2.Match(sAnswer).Value).Value
    dE1 = oRegExInE1.Match(oRegExE1.Match(sAnswer).Value).Value
    dE2 = oRegExInE2.Match(oRegExE2.Match(sAnswer).Value).Value
    Catch ex As Exception
    'sResponse = "/*" & ex.Message & "dD1=" & oRegExInD1.Match(oRegExD1.Match(sAnswer).Value).Value & "dD2=" & oRegExInD2.Match(oRegExD2.Match(sAnswer).Value).Value & "dE1=" & oRegExInE1.Match(oRegExE1.Match(sAnswer).Value).Value & "dE2=" & oRegExInE2.Match(oRegExE2.Match(sAnswer).Value).Value & "*/"
    sResponse = "/*0*/"
    b = True
    End Try
    '#endregion ini
    If b = False Then
    ....
    ...
    ...
    куча говна
    ...
    ...
    oContext.Response.Write(sResponse)
    End Sub
    REM Переопределяем свойство IsReusable.
    Public ReadOnly Property IsReusable() As Boolean Implements System.Web.IHttpHandler.IsReusable
    Get
    Return False 'запрещем кеширование этого обработчика в оперативной памяти вэб-сервера.
    End Get
    End Property
    End Class
    End Namespace

    А так мы получаем курс валют с локализацией.
    Рассчитывалось использовать на высоконагруженном портале. типо еллоупэйджеса.
    Через хэндлер.
    Максим Прохоров вас будет ещё долго радовать.

    ursus, 23 Апреля 2010

    Комментарии (4)
  4. VisualBasic / Говнокод #3078

    −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
    public static DateTime tString2DateTime(String sDateTime)
    {
    //var
    Int32 iYear=DateTime.Now.Year;
    Int32 iMonth=DateTime.Now.Month;
    Int32 iDay=DateTime.Now.Day;
    Int32 iHour=DateTime.Now.Hour;
    Int32 iMinute=DateTime.Now.Minute;
    Int32 iSecond=DateTime.Now.Second;
    //end var
    try
    {
    iYear=Convert.ToInt32(sDateTime.Substring(0,4));
    try
    {
    iMonth=Convert.ToInt32(sDateTime.Substring(4,2));
    try
    {
    iDay=Convert.ToInt32(sDateTime.Substring(6,2));
    try
    {
    iHour=Convert.ToInt32(sDateTime.Substring(8,2));
    try
    {
    iMinute=Convert.ToInt32(sDateTime.Substring(10,2));
    try
    {
    iSecond=Convert.ToInt32(sDateTime.Substring(12,2));
    }
    catch
    {
    }
    }
    catch
    {
    }
    }
    catch
    {
    }
    }
    catch
    {
    }
    }
    catch
    {
    }
    }
    catch
    {
    }
    return new DateTime(iYear,iMonth,iDay,iHour,iMinute,iSecond);
    }

    а вам слабо?
    Функция имени Максима Прохорова

    ursus, 22 Апреля 2010

    Комментарии (19)
  5. VisualBasic / Говнокод #3077

    −94

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    // Функция, проверяющая совпадение цветов. Переваривает любые типы
    public static Boolean bColor(Object oR1,Object oG1, Object oB1,Object oR2,Object oG2, Object oB2)
    {
    if(!IsByte(oR1) || !IsByte(oR2) || !IsByte(oG1) || !IsByte(oG2) || !IsByte(oB1) || !IsByte(oB2)) return false;
     }

    Имени Максима Прохорова функция

    ursus, 22 Апреля 2010

    Комментарии (7)
  6. VisualBasic / Говнокод #2990

    −125.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
    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
    Sub Макрос2()
        Dim pos0, pos1, pos2, pos3, pos4, pos5, pos6, pos7, pos8, pos9, digitPos As Integer
    
        For Counter = 2 To 999999
            digitPos = 1000
        
            Set curCell = Worksheets("Лист1").Cells(Counter, 5)
            Set primCell = Worksheets("Лист1").Cells(Counter, 6)
        
            pos0 = InStr(1, primCell.Value, "0")
            pos1 = InStr(1, primCell.Value, "1")
            pos2 = InStr(1, primCell.Value, "2")
            pos3 = InStr(1, primCell.Value, "3")
            pos4 = InStr(1, primCell.Value, "4")
            pos5 = InStr(1, primCell.Value, "5")
            pos6 = InStr(1, primCell.Value, "6")
            pos7 = InStr(1, primCell.Value, "7")
            pos8 = InStr(1, primCell.Value, "8")
            pos9 = InStr(1, primCell.Value, "9")
            
            If pos0 > 0 And pos0 < digitPos Then
                digitPos = pos0
            End If
            
            If pos1 > 0 And pos1 < digitPos Then
                digitPos = pos1
            End If
            
            If pos2 > 0 And pos2 < digitPos Then
                digitPos = pos2
            End If
            
            If pos3 > 0 And pos3 < digitPos Then
                digitPos = pos3
            End If
            
            If pos4 > 0 And pos4 < digitPos Then
                digitPos = pos4
            End If
            
            If pos5 > 0 And pos5 < digitPos Then
                digitPos = pos5
            End If
            
            If pos6 > 0 And pos6 < digitPos Then
                digitPos = pos6
            End If
            
            If pos7 > 0 And pos7 < digitPos Then
                digitPos = pos7
            End If
            
            If pos8 > 0 And pos8 < digitPos Then
                digitPos = pos8
            End If
            
            If pos9 > 0 And pos9 < digitPos Then
                digitPos = pos9
            End If
            
            'MsgBox Left(primCell.Value, digitPos - 1)
            
            curCell.Value = Trim(Left(primCell.Value, digitPos - 1))
        Next Counter
    End Sub

    Я идиот и не умею программировать в excel!!
    Мне надо было отрезать текст до первой цифры в одной ячейке и засунуть его в другую.
    Наверное, надо было почитать про массивы в VB

    striker, 12 Апреля 2010

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

    −132.6

    1. 1
    2. 2
    3. 3
    4. 4
    If objRow.IsQuestion_SpecialismNull Then
                '--- ASK DEAN
                Return True
    End If

    Dean - наш тим лид

    6istik, 05 Апреля 2010

    Комментарии (4)
  8. VisualBasic / Говнокод #2694

    −130.4

    1. 1
    2. 2
    3. 3
    4. 4
    Private Sub Form_AfterInsert() ' событие после вставки новой записи в таблицу table
      runSQL ("UPDATE table set TYPE= 9 where ID = (select max(p.ID) from table p )")
      Me.Form.Requery
    End Sub

    Событие на форме в Access
    А достаточно было просто повесить на форму поле с источником данных TYPE и дефолтовым значением 9.

    vie, 01 Марта 2010

    Комментарии (2)
  9. VisualBasic / Говнокод #2467

    −122.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
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    Private Sub Form_Load()
    'загрузка изображения
    Dim xx(), yy(), zz()
    Dim i As Integer
    Dim maxx As Integer
    Dim maxy As Integer
    Dim minx As Integer
    Dim miny As Integer
    xx = Array(0#, 1#, 1#, 11#, 11#, 6#, 11#, 1#, 1#, 11#, 11#)
    yy = Array(0#, 11#, 1#, 1#, 6#, 11#, 11#, 11#, 1#, 1#, 11#)
    zz = Array(0#, 11#, 11#, 11#, 11#, 11#, 6#, 1#, 1#, 1#, 1#)
    For i = 1 To 10
     x(i) = xx(i) * 1.5
     y(i) = yy(i) * 1.5
     z(i) = zz(i) * 1.5
     x0(i) = xx(i)
     y0(i) = yy(i)
     z0(i) = zz(i)
    Next
    maxx = 20
    minx = -20
    maxy = 20
    miny = -20
    Picture1.ScaleMode = 0
    Picture1.Scale (minx, maxy)-(maxx, miny)
    Call Angle(210, 30)
    Call Cube(x(), y(), z())
    sd = False
    End Sub

    Вот такая вот куча малопонятного говна

    flash, 21 Января 2010

    Комментарии (0)
  10. VisualBasic / Говнокод #2448

    −124.3

    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
    '...
            Dim l0 As New List(Of Integer)
            Dim num = Convert.ToInt32(Console.ReadLine)
            For i = 1 To num Step 1
                Dim nn, nm As Double
                nn = num / i
                nm = Convert.ToInt32(num / i)
                If nn = nm Then
                    l0.Add(i)
                End If
            Next
            If l0.Count = 2 Then
                Console.WriteLine("Number {0} is simply.", num)
            Else
                Console.WriteLine("Number {0} is not simply.", num)
            End If
            Console.ReadKey()
    '...

    Эх, детство, детство... Когда-то нужно было написать программу проверки числа на простоту.

    psina-from-ua, 19 Января 2010

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