- •Основы и принципы работы в vba
- •Часть 2 омск 2008
- •Часть 2
- •5.1. Теоретические сведения
- •5.2. Индивидуальные задания
- •6.1. Теоретические сведения
- •6.2. Индивидуальные задания
- •Циклы накопления суммы и произведения.
- •7.1. Теоретические сведения
- •7.2. Индивидуальные задания
- •Создание и использование процедур
- •8.1. Теоретические сведения
- •8.1.1. Создание процедур-функций типа Function
- •8.1.2. Создание процедуры-подпрограммы Sub
- •8.2. Индивидуальные задания
- •Часть 2
- •644046, Г. Омск, пр. Маркса, 35
6.1. Теоретические сведения
Ц
1
Пр и м е р1. Составить алгоритм и программу табулирования функции при b =1,5:
Аргумент x изменяется от 0,1 до 1 (0,1 ≤ x ≤1) с шагом ∆x = 0,1. Схема алгоритма приведена на рис. 6.1. Для организации цикла по переменной x служит блок 3. Телом цикла является разветвляющийся алгоритм по условию bx < 1 (блоки 4 – 7).
Программа на языке VBA имеет вид:
Option Explicit
Sub PR1()
Рис.
6.1. ГСА к примеру 1
Dim i As Integer, j As Integer
i = 2: j = 2 : b=1.5
For x = 0.1 To 1 Step 0.1
If b * x < 1 Then
y = b * x + Log(x)
Cells(i, 1) = x: Cells(i, 2) = y : i=i+1
Else
y = b * x - Log(x)
Cells(j, 3) = x: Cells(j, 4) = y : j=j+1
End If
Next x
End Sub
П р и м е р 2 (цикл со счетчиком). В компьютер последовательно вводятся 10 натуральных чисел (целые х). Определить, сколько среди них чисел, больших 10?
Алгоритм решения этой задачи представлен на рис. 6.2. В блоке 2 задается начальное значение счетчика k чисел, больших 10.
Цикл по вводу чисел и проверке условия их отбора организуется при помощи управляющей переменной цикла i. Действия по заданию начального значения i, изменение ее на шаг Δi=1 (i = i +1) и проверка достижения конечного значения i = 10 задаются в блоке 3.
Значения чисел х вводятся с помощью диалоговых окон ввода (блок 4). В условном блоке 5 производится проверка условия: x > 10. Если условие выполняется, то производится увеличение значения счетчика k на единицу (блок 6). Если х ≤ 10, то процесс ввода х и вычисления k повторяются, пока компьютер не проанализирует все 10 чисел.
Численное значение счетчика k выводится с помощью диалогового окна вывода (блок 7).
6.2. Индивидуальные задания
З а д а н и е 1. Составить алгоритм и программу с использованием операторов For – Next в соответствии с индивидуальным заданием (табл. 6.1). Ввод исходной информации выполнить с помощью функции InputBox для задач, помеченных *, вывод – в ячейки рабочего листа Excel.
Таблица 6.1
Задачи на составление программы «цикл со счетчиком»
Вариант |
Задание |
1 |
2 |
1 |
Напечатать четные числа в диапазоне от 10 до 100, расположив их по убыванию. Вычислить для этих чисел среднее арифмети-ческое значение |
2 |
Напечатать и подсчитать количество чисел, кратных четырем, в диапазоне от 25 до 80, расположив их по возрастанию. Вычислить для этих чисел среднее арифметическое значение |
3* |
Для произвольных пяти чисел, введенных с клавиатуры, вычислить среднее геометрическое значение |
4 |
Подсчитать количество чисел, кратных пяти, в диапазоне от 103 до 567 |
5* |
Для произвольных пяти чисел, введенных с клавиатуры, вычислить сумму остатков от деления этих чисел на 3 |
6* |
Подсчитать количество нечетных чисел среди произвольных 10 чисел, введенных с клавиатуры |
7 |
Вычислить количество и сумму чисел, кратных 25, в диапазоне от 983 до 1150 |
8 |
Вычислить количество и произведение чисел, кратных трем, в диапазоне от 7 до 46 |
9 |
Напечатать числа кратные четырем в диапазоне от 230 до 297, расположив их по убыванию, и указать количество этих чисел |
10 |
В диапазоне от 1000 до 2000 найти минимальное число, кратное 46, и максимальное число, кратное 26 |
11 |
Вычислить сумму квадратов всех нечетных чисел в диапазоне от 42 до 73 |
Окончание табл. 6.1
1 |
2 |
12* |
Подсчитать произведение квадратов пяти произвольных чисел, введенных с клавиатуры |
13 |
В диапазоне от 15 до 167 найти максимальное и минимальное числа, кратные 14 |
14* |
Найти сумму чисел кратных трем, среди произвольных 10 чисел, введенных с клавиатуры |
15* |
Вычислить сумму и количество отрицательных чисел среди произвольных 10 чисел, введенных с клавиатуры |
З а д а н и е 2. Разработать ГСА, программу для табуляции функции у = f(x) (табл. 6.2) и построить ее график с передачей данных в Excel. Построение графика разрывной функции у выполнить для одинакового количества точек среднего и крайних интервалов изменения аргумента х.
Таблица 6. 2
Функции для табулирования
Вариант |
Функция |
Вариант |
Функция |
1 |
2 |
3 |
4 |
1 |
|
2 |
|
3 |
|
4 |
|
Продолжение табл. 6.2
1 |
2 |
3 |
4 |
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
Окончание табл. 6.2
1 |
2 |
3 |
4 |
17 |
18 |
| |
19 |
20 |
| |
21 |
|
22 |
|
23 |
|
24 |
|
Лабораторная работа 7