Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Оператор цикла с параметром For – Next



 

Оператор цикла For – Next используется, когда заранее известно, сколько раз должно повториться тело цикла.

Общий вид оператора цикла с параметром выглядит следующим образом:

 

For Счетчик = Начальное значение To Конечное значение Step Шаг

Блок операторов

Next Счетчик

 

Цикл For – Next обеспечивает выполнение блока операторов (тела цикла) n раз при последовательном изменении счетчика от начального до конечного значения с указанным шагом изменения.

 

.

 

Если Step Шаг в конструкции отсутствует, то по умолчанию считается, что шаг равен 1.

 

Пример 1

Задано натуральное число n. Вычислить n! (факториал n).

Напомним, что n! = 1× 2× 3× 4× …× n. Таким образом, в данном примере нужно вычислить произведение. Для его вычисления существует следующее правило: перед организацией цикла необходимо задать начальное значение произведения, равное числу, не влияющему на результат умножения на первом шаге, т.е 1, а затем в цикле предусмотреть оператор, который производит накапливание произведения.

 

Например, 5! = 1× 2× 3× 4× 5 = 120.

Программный код

 

Option Explicit

Sub PR7() ’ начало процедуры

Описание переменных с указанием их типов
Dim n As Integer

Dim F As Double

Dim i As Integer

n = Val(InputBox(" Введите n" )) ‘ ввод числа n с клавиатуры

F = 1 ’ начальное значение произведения

For i = 1 To n ’ начало цикла

F = F * I ’оператор накапливания произведения

Next I ’ конец цикла

MsgBox (" Факториал числа " & n & " =" & F ’ вывод результата на экран

End Sub ’ конец процедуры

 

Пример 2

Вычислить y=sin0.1+sin0.2+sin0.3+…+sin10

В данном примере нужно вычислить сумму. Для этого перед организацией цикла нужно задать начальное значение суммы, равное числу, не влиящему на результат сложения на первом шаге, т.е. 0.

Программный код

 

Option Explicit

Sub PR8()

Dim x As Double, y As Double, summa As Double ’описание переменных

summa = 0 ’ начальное значение суммы

For x = 0.1 To 10 Step 0.1 ’ начало цикла

summa = summa + Sin(x) ’оператор накапливания суммы

Next x ’ конец цикла

MsgBox (" Сумма=" & summa) ’ вывод результата на экран

Cells(1, 1)= " Сумма=" & summa ’ вывод результата в ячейку А1 в Excel

End Sub

 

Пример 3

Задан натуральный ряд чисел. Вычислить сумму нечетных чисел данного ряда.

В этой программе производится вычисление суммы (по предложенному образцу).

Кроме того, для вывода всех чисел этого ряда в Excel до организации цикла нужно задать номер строки, с которой начнется запись 1-го значения ряда, а в цикле предусмотреть оператор (счетчик), который будет переводить курсор в нижележащую ячейку для записи следующего значения ряда до тех пор, пока не будет записано последнее значение.

Программный код

 

Option Explicit

Sub PR10()

Dim N As Integer, I As Integer, S As Double, K As Integer

K = Val(InputBox(" Введите K" )) ’ количество членов ряда

Cells(1, 1)= ”Ряд” ’ запись в ячейку А1 текста Ряд

N=2 ’ номер строки, с которой начнется запись 1-го значения

S = 0 ’ начальное значение суммы

For i = 1 To n step 2 ’ цикл для перебора нечетных чисел ряда

Cells(N, 1)= I ’ запись членов ряда, начиная с 1-го, в 1-й столбец Excel

S = S + I ’суммирование членов ряда

N = N +1 ’ счетчик строк

Next I ’ конец цикла

Cells(1, 2)= “Сумма ряда=” & S ’ запись суммы ряда в ячейку В1 Excel

MsgBox (“Сумма ряда=” & S) ’ вывод результата суммы на экран

End Sub

 

МАССИВЫ

Часто бывает необходимо работать с некоторым набором однотипных данных как с единым целым. В таких случаях используются массивы – структурированные боксы для хранения множеств элементов данных одинакового типа.

Массивы могут быть одномерными и многомерными.

Одномерные массивы

 

Одномерный массив – это набор однотипных элементов, расположенных друг за другом в одной строке или столбце.

 

Пример

1 –34 8 2 6

или

-5

 

Каждый элемент массива обозначается при помощи имени массива и индекса, заключенного в круглые скобки.

Индекс может быть:

· константой

Пример

P(1), C(5)

· переменной целого типа

Пример

A(i), B(j)

· арифметическим выражением (значение арифметического выражения должно быть целым)

Пример

A(i*2), Q(i^j)

 

Объявление массива

 

Как и обычные переменные, массивы должны быть объявлены. Для описания массива используется оператор Dim.

 

Dim Имя массива (Размерность массива) As Тип элементов

 

Пример

Dim A (100) As Integer

Dim B (50) As Byte

Dim С (40) As Double

 

При таком описании массива его элементы индексируются (т.е. нумеруются), начиная с нуля.

Если оператор описания будет выглядеть следующим образом:

Dim A (1 To 100) As Integer,

то элементы массива индексируются с единицы.

 

Ввод массива

Перед обработкой массива его необходимо заполнить (ввести).

Массив будем считывать с рабочего листа Excel, в который числа заносятся вручную или при помощи счетчика случайных чисел.

 

 
 

1 способ. На рабочем листе введем числа в ячейки электронной таблицы (рис. 4), откроем окно программного кода и запишем в него программу, которая считывает данный массив чисел.

Рис. 4. Исходный массив

Программный код

 

Option Explicit

Sub PR14()

Dim A(20) As Integer

Dim i As Integer

For i = 1 To 6

A(i) = Cells(1, i) ‘ массив заполняется

Next i ‘ числами с рабочего листа Excel

End Sub

 

2 способ. Массив можно заполнить при помощи счетчика случайных чисел. Для этого в программе после объявления переменных следует написать следующее:

 

Randomize

For i = 1 To 10

Cells(1, i) = Int(Rnd * 100 – 50)

A(i) = Cells(1, i) ‘ заполнение массива

Next i

 

Функция Rnd возвращает значение от 0 до 1. Перед вызовом функции Rnd используется инструкция Randomize без аргумента для инициализации генератора случайных чисел значением, возвращаемым системным таймером.

Cells(1, i) означает ячейку электронной таблицы, находящуюся в первой строке и столбце с номером i.

Вообще оператор Cells(i, j) служит для вывода информации в ячейку электронной таблицы или считывания информации из ячейки электронной таблицы Excel. В скобках через запятую указываются номер строки – i и номер столбца – j ячейки электронной таблицы.

 

Пример

Cells(1, 2) = x ‘в ячейку B1 записывается информация из переменной х

х = Cells(1, 2) ‘из ячейки В1 считывают информацию в переменную х

 

Вывод массива

 

Для распечатки полученного массива на рабочий лист Excel используется следующая конструкция:

 

For i = 1 To n

Cells(k, i) = A(i) ‘ вывод массива в ячейки электронной таблицы

Next i ‘ k – номер строки для заполнения ячеек.

 

Вместо переменной k можно использовать конкретное значение, например 3, тогда массив распечатается в третьей строке рабочего листа.

После заполнения ячеек их содержимое можно посмотреть, свернув окно программного кода при помощи кнопки “Свернуть” или переключившись в окно Excel с помощью соответствующей кнопки на панели задач.

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-08; Просмотров: 465; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.037 с.)
Главная | Случайная страница | Обратная связь