Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Операторы цикла



Читайте также:
  1. I система: аденилатциклаза – цАМФ
  2. I. Расчёт термодинамического цикла холодильной машины.
  3. БУЛЕВЫ ОПЕРАТОРЫ
  4. В формулу входят операторы, ссылки на ячейки, значения, функции и имена
  5. В-34. Классификация моделей ХТС. Технологические операторы и топологии ХТС.
  6. Глава 9. ИЗМЕНЕНИЕ ПОВЕДЕНИЯ НА РАЗНЫХ СТАДИЯХ ЖИЗНЕННОГО ЦИКЛА
  7. Гликолиз. Механизмы регуляции цикла. Энергетическая эффективность процесса, значение. Связь с другими процессами

 

4.2.1. Цикл со счётчиком

 

For ИндекснаяПеременная = НачальноеЗначение To КонечноеЗначение Step Шаг

 

группа_операторов

 

Next ИндекснаяПеременная

Оператор цикла For…Next повторяет выполнение группы операторов, пока значение индексной переменнойизменяется от начального значения до конечного с шагом, указанным после слова Step. Ветвь Step Шаг является необязательной. В качестве начального и конечного значений могут использоваться численные переменные и константы, выражения или функции, возвращающие число. Если шаг не задан, то он полагается равным 1. При использовании индексной переменной после цикла следует помнить, что после выполнения цикла она содержит значение КонечноеЗначение + Шаг. Например, следующая программа выводит на экран окна со значениями индексной переменной цикла:

 

Sub N3()

Dim i As Integer

For i = 1 To 4

MsgBox "i=" & CStr(i)

Next i

End Sub

 

После слова Next ставится та же индексная переменная, что и после слова For. Об этом следует помнить при применении вложенных друг в друга циклов.

В следующей программе пользователь вводит с клавиатуры размер одномерного массива (переменная N), вводит его элементы с клавиатуры, а затем элементы массива выводятся на рабочий лист Excel:

 

Sub N4()

Dim A() As Single ‘объявление массива А без размеров как динамического

Dim i As Integer, N As Integer

N = InputBox("N=")

ReDim A(1 To N) As Single ‘задание размера массива А

For i = 1 To N

A(i) = InputBox("A(" & CStr(i) & ")=")

Next i

For i = 1 To N

Sheets("Лист1").Cells(1, i).Value = A(i)

Next i

End Sub

 

Ввод с клавиатуры элементов двумерного массива и вычисление суммы его элементов:

 

Sub MM()

Dim S() As Single

Dim i As Integer, j As Integer

Dim Sum As Single

i = InputBox("Введите число строк:")

j = InputBox("Введите число столбцов:")

ReDim S(1 To i, 1 To j) As Single

For k = 1 To i ‘ внешний цикл перебирает строки

For n = 1 To j ‘ внутренний - столбцы

S(k, n) = InputBox("Введите значение элемента " & CStr(k) & _

"-й строки, " & CStr(n) & "-го столбца“, _

"Ввод массива S")

Next n

Next k

For k = 1 To i

For n = 1 To j

Sum = Sum + S(k, n)

Next n, k ‘ В Basic допустимо и такое завершение вложенных циклов

MsgBox "Сумма элементов массива S:" & CStr(Sum)

End Sub

 

4.2.2. Оператор For Each … Next

Оператор For Each … Next повторяет выполнение группы инструкций для каждого элемента массива или группы:

 

For Each элемент In группа

группа_операторов

 

Next

Этот оператор работает только с элементами типа Variant или с объектами.

 

Для выхода из циклов For до завершения используется оператор Exit For. Например:

 

Function Summ()

Dim F(1 To 50) As Integer

Dim i As Integer, Limit As Integer

Sum = 0

Limit = InputBox("Введите индекс предела суммирования", _

"Массивы и циклы")

For i = 1 To 50

If i < Limit Then

F(i) = 0.98 * i ^ 2

Sum = Sum + F(i)

Else

Exit For

End If

Next i

MsgBox "Сумма элементов массива при i = 1,..., " & _

CStr(limit) & " равна " & CStr(Sum)

End Function

 

В этом примере в цикле вычисляются все значения массива и, в переменную Sum, накапливается сумма элементов массива от 1-го индекса до введённого предела.

Следующий пример демонстрирует работу с динамическим массивом. Пользователь с клавиатуры вводит число строк и столбцов в двумерном массиве, а затем вычисляется сумма элементов массива.


Дата добавления: 2015-07-11; просмотров: 54 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.007 сек.)