ПОНЯТНО О Visual Basic NET (том 3)


         

ByVal Поправка As Integer, ByVal


        Исправление(3, B)
        Dim i As Integer
        For i = 0 To 3                 'Распечатываем исправленные значения температур
            Debug.WriteLine(A(i) & "           " & B(i))
        Next
End Sub
Sub Исправление( ByVal Поправка As Integer, ByVal c() As Integer)
        Dim i As Integer
        For i = 0 To 3
            c(i) = c(i) + Поправка
        Next
End Sub
Примечание: Обратите внимание на то, что я смог объявить параметр c как ByVal вместо ByRef. И это несмотря на то, что процедура должна исправлять исходный массив. Это стало возможным потому, что массивы ByVal не защищает.
122.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Debug.WriteLine(fib(30))
End Sub
Private Function fib(ByVal N As Integer) As Decimal
        If N = 1 Or N = 2 Then fib = 1 Else fib = fib(N - 2) + fib(N - 1)              'Изумительная лаконичность!
End Function
'За изумительную лаконичность расплачиваемся удручающе низким быстродействием.
'Когда N переваливает за пару десятков, результата приходится долго ждать.
'Ничего подобного не было при вычислении чисел Фибоначчи простым циклом.
'Почему так? А попробуйте подсчитать, сколько раз компьютеру приходится
'обращаться к  функции fib. Миллионы и миллиарды раз. Для неверующих – F11.
123.
Sub puziryok_3(ByVal mass1() As String, ByVal mass2() As Integer, ByVal mass3() As Integer, ByVal N As Integer)
        Dim i, c, m As Integer
        Dim s As String                             'Транзитный элемент для строкового массива
        For m = N To 1 Step -1
            For i = 0 To m - 1
                If mass3(i) > mass3(i + 1) Then
                    s = mass1(i) : mass1(i) = mass1(i + 1) : mass1(i + 1) = s         'Обмен в 1 массиве
                    c = mass2(i) : mass2(i) = mass2(i + 1) : mass2(i + 1) = c         'Обмен во 2 массиве
                    c = mass3(i) : mass3(i) = mass3(i + 1) : mass3(i + 1) = c         'Обмен в 3 массиве

Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий