Пример 3. Задан массив, содержащий N вещественных чисел
Задан массив, содержащий N вещественных чисел. Найти наибольший и наименьший элементы и поменять их местами.
Public Sub Prog3()
Dim n As Integer, i As Integer
Dim imin As Integer, imax As Integer
Dim max As Double, min As Double
Dim a() As Double
n = CInt(InputBox("введите N"))
ReDim a(1 To n)
Worksheets(1).Range("A1") = "Исх. массив"
For i = 1 To n
a(i)=CDbl(InputBox("Введите " & i & "-й элемент последовательности"))
Worksheets(1).Cells(i + 1, 1) = a(i)
Next
imin = 1: imax = 1
min = a(1): max = a(1)
For i = 1 To n
If a(i) > max Then
imax = i: max = a(i)
End If
If a(i) < min Then
imin = i: min = a(i)
End If
Next i
a(imin) = max
a(imax) = min
Worksheets(1).Range("C1") = "Рез. массив"
For i = 1 To n
Worksheets(1).Cells(i + 1, 3) = a(i)
Next i
End Sub
Пример 4
Вывести на экран окно сообщения со строкой нечетных чисел
Public Sub Prog4()
Dim addnum As String
For a = 1 To 21 Step 2
addnum = addnum & a & " "
Next a
MsgBox "Это последовательность нечетных чисел:" & _
Chr(13) & addnum
End Sub
В) Операторы повтора
Инструкция For…Next применяется в тех случаях, когда известно число повторений.
Если число повторений неизвестно, то применяются операторы повтора.
Существует несколько типов Операторов повтора
Операторы повтора с предусловием.
Синтаксис:
Do While <условное выражение>
<операторы>
[Exit Do]
< операторы >
Loop
While < условное выражение >
<операторы>
[Exit Do]
< операторы >
Wend
Работа:
Вычисляется условное выражение. Если значение условного выражения равно TRUE (истина), то выполняется блок <операторы> и, достигнув слова Loop, опять управление передается в начало оператора повтора, чтобы опять проверить условное выражение. Если вычисленное значение условного выражения равно FALSE (ложь), то управление передается оператору, следующему за оператором повтора.
При наличии инструкции Exit Do есть возможность досрочного выхода из цикла.
На блок-схеме операторы отображаются следующим образом:
Еще одной формой записи оператора повтора с предусловием, является следующий оператор:
Do Until <условие>
<операторы>
[Exit Do]
< операторы >
Loop
Работа:
Вычисляется условное выражение. Если значение условного выражения равно FALSE (ложь), то выполняется блок <операторы> и, достигнув слова Loop, опять управление передается в начало оператора повтора, чтобы опять проверить условное выражение. Если вычисленное значение условного выражения равно TRUE (истина), то управление передается оператору, следующему за оператором повтора.
Операторы повтора с постусловием.
Синтаксис:
Do
<операторы>
[Exit Do]
< операторы >
Loop While <условное выражение>
Работа:
Блок операторов выполняется, если <условное выражение> имеет значение TRUE (истина). Оператор повтора прекращает свою работу, если <условное выражение> примет значение FALSE (ложь)
Do
<операторы>
[Exit Do]
< операторы >
Loop Until <условное выражение>
Работа:
Блок операторов выполняется, если <условное выражение> имеет значение FALSE (ложь). Оператор повтора прекращает свою работу, если <условное выражение> примет значение TRUE (истина).
Примечание:
Дата добавления: 2015-08-08; просмотров: 711;