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
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий