- •Лабораторная работа № 3
- •1. Оператор цикла с параметром (For…Next) 1
- •2. Циклы с предусловием и постусловием 2
- •3. Понятие массива и способы его объявления 5
- •4. Размещение элемента управления на рабочем листе ms Excel 9
- •1. Оператор цикла с параметром (For…Next)
- •2. Циклы с предусловием и постусловием
- •3. Понятие массива и способы его объявления
- •1) Одномерный статический массив
- •2) Двумерный статический массив
- •3) Динамический массив:
- •Пример 4. Сортировка элементов массива (методом выбора)
- •3.2 Типовые алгоритмы обработки двумерного массива Пример 5. Определить сумму и количество положительных элементов в массиве целых чисел.
- •Схемы для обращения к элементам на главной (побочной) диагоналях
- •3.3 Типовые алгоритмы обработки динамического массива
- •4. Размещение элемента управления на рабочем листе ms Excel
- •Порядок выполнения работы:
- •Задание 1.
- •Задание 2.
- •Контрольные вопросы:
Лабораторная работа № 3
Тема: Программирование циклических алгоритмов на Visual Basic. Работа на VBA со статическими и динамическими массивами. Использование элементов управления на рабочем листе. (6 часов)
Цель работы: Приобрести навыки программирования циклических алгоритмов, а также использование процедур и функций по обработке массивов.
Содержание:
1. Оператор цикла с параметром (For…Next) 1
2. Циклы с предусловием и постусловием 2
3. Понятие массива и способы его объявления 5
3.1 Типовые алгоритмы обработки одномерного массива 6
Пример 1. Ввод/вывод элементов одномерного массива с помощью функций InputBox(), MsgBox() 6
Пример 2. Заполнение массива с помощью генератора случайных чисел 6
Пример 3. Поиск максимального (минимального) элемента (индекса) массива. 6
Пример 4. Сортировка элементов массива (методом выбора) 7
3.2 Типовые алгоритмы обработки двумерного массива 8
Пример 5. Определить сумму и количество положительных элементов в массиве целых чисел. 8
Схемы для обращения к элементам на главной (побочной) диагоналях 9
3.3 Типовые алгоритмы обработки динамического массива 9
4. Размещение элемента управления на рабочем листе ms Excel 9
Порядок выполнения работы: 10
Контрольные вопросы: 12
1. Оператор цикла с параметром (For…Next)
Оператор цикла For позволяет повторять группу операторов фиксированное количество раз.
Синтаксис:
-
For <счётчик_цикла> = <начало> To <конец> [Step <шаг>]
<тело цикла>
[Exit For]
. . .
Next [<счётчик_цикла>],
где
<счётчик_цикла> – числовая переменная;
<начало> – начальное значение (выражение) переменной <счётчик_цикла>;
<конец> – заключительное значение (выражение) переменной <счётчик_цикла>;
<тело цикла> – это последовательность операторов, которая будет выполнена заданное число раз.
Порядок выполнения: переменной <счётчик_цикла> присваивается значение <начало> и проверяется условие: <начало> £ <конец>; если условие неверно, то <тело цикла> не выполняется и управление передается на оператор, следующий за Next. Если же условие выполняется, то выполняется <тело цикла>, затем значение <счётчик_цикла> изменяется на значение <шаг> (увеличится в случае положительного значения <шаг> и уменьшается при отрицательном значении <шаг>). Данный процесс будет выполняться, пока значение <счётчик_цикла> не достигнет значения <конец> (если шаг положителен, цикл завершится, когда впервые выполнится условие: <счетчик_цикла> <конец>. Если шаг цикла отрицателен, условие его завершения: <счетчик_цикла> <конец>).
Досрочно завершить цикл For…Next можно и с помощью оператора Exit For. Такие операторы могут быть расположены в тех местах тела цикла, где требуется из него выйти, не дожидаясь выполнения условия завершения.
Изображение в блок-схемах:
Пример 3.3. Вычислить n-й член последовательности, заданной формулой , если .
Public Sub prog3() Dim n As Byte Dim an As Integer, a1 As Integer, a2 As Integer n=CByte(InputBox("n ="))
a1 = 1: a2 = 1
For i = 3 To n
an = a1 + a2
a1 = a2: a2 = an
Next i
MsgBox an
End Sub |
Описание переменной типа Byte
Ввод значения переменной n (номера элемента последовательности) через окно ввода и преобразование введенного значения к типу Byte Присваивание начальных значений переменным а1 и а2 (двоеточием разделяются операторы, записанные на одной строке) Организация цикла For…Next, в котором счетчик i изменяется от 3 до n с шагом 1 Вычисление следующего члена последовательности как сумму двух предыдущих членов последовательности Изменение последнего и предпоследнего значений последовательности на данный момент Увеличение счетчика на 1 (конец тела цикла) Вывод значения an |