Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_основы_прогр_на_VBA_заочники.docx
Скачиваний:
4
Добавлен:
05.09.2019
Размер:
225.12 Кб
Скачать
  1. Литература

  1. Кузьменко В.Г. VBA 2002. – М.: ЗАО "Издательство БИНОМ", 2002 г. – 624с.

  2. № 2963. Основы алгоритмизации. - Гомель: ГГТУ, 2004.

  3. №2980. Основы программирования на VBA. - Гомель: ГГТУ, 2004.

  4. №2872. Основные приемы работы в Excel. - Гомель: ГГТУ, 2004.

  5. №3009.Язык VBA: Интегрированная среда разработки. – Гомель: ГГТУ, 2004.

Содержание

1. Правила оформления контрольной работы 3

2. Теоретические сведения. Язык Visual Basic for Applications. 4

3. Примеры составления программ 15

3.1. Линейный алгоритм. 15

3.2. Разветвляющийся алгоритм. 16

Задача. Составить программу для расчета функции 16

3.3. Циклический алгоритм табулирования функции 18

2. Составляем таблицу соответствия переменных 19

3. Составляем текст программы 19

Sub Tabl() 19

'Составил Иванов И.И., гр.ЗО-11 19

Dim i As Integer, x As Single 19

Dim xn As Single, k As Single, dx As Single 19

xn = InputBox("Введи Xнач") 19

xk = InputBox("Введи X кон") 19

dx = InputBox("Введи шаг") 19

'Заголовок таблицы 19

Cells(1, 1) = "№ п/п" 19

Cells(1, 2) = "x" 19

Cells(1, 3) = "y" 19

Cells(1, 5) = "xнач=" & xn 19

Cells(2, 5) = "xкон=" & xk 19

Cells(3, 5) = "шаг=" & dx 19

i = 1 19

For x = xn To xk Step dx 19

Cells(i + 1, 1) = i 19

Cells(i + 1, 2) = x 19

Cells(i + 1, 3) = Sin(x) 20

i = i + 1 20

Next x 20

End Sub 20

4. Составляем тесты для проверки правильности работы программы 20

3.4. Циклический алгоритм вычисления суммы и произведения элементов массива. 21

2. Составляем таблицу соответствия переменных 21

Рис.3.4. Схема алгоритма примера 3.4. 23

3. Составляем фрагмент программы 23

………………………………….. 23

S =0 23

For i = 1 To n 23

If X(i) > a And X(i) <= b Then 23

S = S + X(i) 23

End If 23

Next i 23

P = 1: K = 0 23

For i = 2 To n Step 2 23

If X(i) > 0 Then 23

P = P * X(i) 23

K = K + 1 23

End If 23

Next i 23

'Вывод суммы 23

If S=0 Then 23

MsgBox "чисел, принадлежащих(" & a & ", " & b & "] Нет",, _ 23

"Вывод сообщения" 23

Else 23

MsgBox "сумма чисел, принадлежащих (" & a & "," & b & ") = " & _ 23

S,, "Вывод суммы" 23

End If 23

'Вывод произведения 23

If K = 0 Then 23

MsgBox "чисел >0 на чётных местах нет",, "Вывод сообщения" 23

Else 23

MsgBox "Произведение чисел >0 на чётных местах =" & P _ 23

& Chr(13) & " их количество = " & K,, "Вывод произведения" 23

End If 23

4. Составляем тесты для проверки правильности работы программы. 23

При тестировании программы нужно рассмотреть все возможные случаи, которые могут возникнуть для разных исходных данных. 23

а) При вычислении суммы: 23

все числа массива (a,b]; 23

все числа массива (a,b]; 23

часть чисел (a,b], а часть – нет. 24

б) При вычислении произведения: 24

все числа, стоящие на четных местах >0; 24

на четных местах нет чисел >0; 24

на четных местах часть чисел >0, а часть нет. 24

Указанные ситуации можно создать, подбирая соответствующим образом числа массива и (или), изменяя значения a и b. 24

Тест№1. 24

N=6 a=0 b=10 24

X1 24

1 24

4 24

5 24

2 24

7 24

3 24

Ожидаемые результаты: S=22 P=24 K=3. 24

Тест№2. 24

N=6 a=8 b=10 24

X1 24

1 24

-2 24

3 24

-4 24

7 24

-6 24

Ожидаемые результаты: чисел (8,10] нет, чисел >0 на четных местах – нет. 24

Тест№3. 24

N=6 a=3 b=6 24

X1 24

4 24

3 24

5 24

-4 24

6 24

5 24

Ожидаемые результаты: S=20 P=15 K=2. 24

3.5. Циклический алгоритм нахождения максимального элемента массива и его номера 24

Задача. Найти максимальный элемент массива X и поменять его местами с предыдущим. 24

Обозначим: 24

Рис.3.5. Схема алгоритма примера 3.5. 27

4. Составляем тесты для отладки программы 27

Тест №1. Максимальный элемент стоит на произвольном месте 27

N=4 Исходный массив: 27

X1 27

X2 27

X3 27

X4 27

-7 27

8 27

12 27

4 27

Ожидаемые результаты: 27

max=12 n_max=3 Результирующий массив: 27

X1 27

X2 27

X3 27

X4 27

-7 27

8 27

12 27

4 27

Тест №2. Максимальный элемент стоит первым 27

N=3 Исходный массив: 27

X1 27

X2 27

X3 27

20 27

8 27

1 27

Ожидаемые результаты: 27

max=20 n_max=1 Перестановка невозможна, массив не изменяется 27

3.6. Циклический алгоритм формирования нового массива из элементов имеющихся. 27

29

Рис.3.6. Схема алгоритма примера 3.6. 29

4. Составляем тесты для отладки программы 30

Тест №1. Все элементы обоих массивов входят в новый массив. 30

N=3 M=2 30

30

B1 30

B2 30

-7 30

-9 30

A1 30

A2 30

A3 30

-5 30

-3 30

-2 30

30

Результат: массив С из 5-и элементов 30

С1 30

С2 30

С3 30

С4 30

С5 30

-5 30

-3 30

-2 30

-7 30

-9 30

Тест №2. Нет элементов, входящих в новый массив. 30

30

B1 30

B2 30

7 30

9 30

A1 30

A2 30

A3 30

5 30

3 30

2 30

Тест №3. Из обоих массивов в новый массив входит часть элементов. 30

30

B1 30

B2 30

-4 30

-2 30

A1 30

A2 30

A3 30

-5 30

3 30

2 30

С1 30

С2 30

С3 30

-5 30

-4 30

-2 30

4. ЛИТЕРАТУРА 30

36