- •Лабораторная работа № 1 Организация ввода-вывода. Структура программы в vba
- •1 Цель работы:
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •2.2 Перечень используемого оборудования
- •3 Варианты заданий
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 2 Реализация линейных алгоритмов в vba
- •Цель работы:
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •2.2 Перечень используемого оборудования
- •3 Варианты заданий
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 3 Оператор выбора в vba
- •1 Цель работы:
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •2.2 Перечень используемого оборудования
- •3 Варианты заданий
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 4 Операторы цикла в vba
- •1 Цель работы:
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •3 Варианты заданий
- •4 Работа в лаборатории
- •Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 5 Работа с массивами в vba
- •1 Цель работы:
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •2.2 Перечень используемого оборудования
- •3 Варианты заданий
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 6 Подпрограммы в vba
- •1 Цель работы:
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •2.2 Перечень используемого оборудования
- •3 Варианты заданий
- •Г (рекурсивные подпрограммы)
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 7 Работа в ms Word и ms Excel
- •2 Пояснения к работе
- •Общие сведения об электронных таблицах Microsoft Excel
- •3 Ход работы Практические занятия по созданию документов Microsoft Word
- •Как правильно сидеть
- •Как правильно поднимать грузы
- •2.2 Практические занятия по созданию таблиц Microsoft Excel
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •Список литературы
- •Лабораторная работа № 8-9 Построение нейронных сетей
- •1 Цель работы
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •2.2 Перечень используемого оборудования
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 10 Применение генетического алгоритма для решения задачи размещения элементов
- •1 Цель работы
- •2 Пояснения к работе
- •2.1Краткие теоретические сведения
- •3. Решение задачи размещения разногабаритных элементов в пространстве на основе га
- •4. Порядок выполнения работы
- •5. Требования к отчету
- •6.Контрольные вопросы
- •7 Список литературы
- •Практическая работа №11 Создание конфигурации в среде разработки конфигураций «1с:Предприятие 8.1»
- •1 Цель работы
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •3 Задание
- •4 Ход работы
- •5 Контрольные вопросы
- •6 Содержание отчета
- •7 Список литературы
- •Практическая работа №12 Разработка конфигурации для предприятия. Объект «Справочник».
- •3 Задание
- •4 Ход работы
- •5 Контрольные вопросы
- •6 Содержание отчета
- •7 Список литературы
- •Практическая работа № 13 Объект конфигурации «Документ».
- •3 Задание
- •4 Ход работы
- •5 Контрольные вопросы
- •6 Содержание отчета
- •6.2 Цель работы
- •7 Список литературы
- •Практическая работа №14 Регистр накопления, движения в документах
- •1 Цель работы
- •2 Пояснения к работе
- •2.1 Краткие теоретические сведения
- •3 Задание
- •4 Ход работы
- •5 Контрольные вопросы
- •6 Содержание отчета
- •6.2 Цель работы
- •7 Список литературы
- •Практическая работа №15 Отчеты
- •1 Цель работы
- •2 Краткие теоретические сведения
- •3 Задание
- •4 Ход работы
- •5 Контрольные вопросы
- •6 Содержание отчета
- •6.2 Цель работы
- •7 Список литературы
- •Практическая работа №16 Макеты, редактирование макетов, создание печатной формы макета.
- •1 Цель работы
- •2 Краткие теоретические сведения
- •3 Задание
- •4 Ход работы
- •5 Контрольные вопросы
- •6 Содержание отчета
- •7 Список литературы
- •Основные приемы вычислительных работ в системе MathCad
- •Решить нелинейное уравнение и построить график (см.Варианты заданий).
- •Решить комплексное уравнение (см.Варианты заданий).
- •Найти корни многочлена и построить график (см.Варианты заданий).
- •4 Работа в лаборатории
- •5 Контрольные вопросы
- •6 Список литературы
- •Лабораторная работа № 19-20 Алгоритмы принятия решений на основе нечёткой логики
- •1 Цель работы:
- •2. Краткие теоретические сведения
- •2.1. Введение
- •2.2. Основы теории нечетких множеств
- •2.3. Основные сведения о пакете Matlab
- •3.Порядок выполнения работы
- •4.Требования к отчету
- •5.Контрольные вопросы
- •6.Рекомендуемая литература
4 Работа в лаборатории
4.1 Ознакомиться с теоретическим материалом по лабораторной работе
4.2 Выполнить предложенные задания
4.3 Продемонстрировать результаты выполнения предложенных заданий
5 Контрольные вопросы
5.1 Что такое оператор выбора?
5.2 Для чего используется оператор выбора?
5.3 Как выглядит синтаксис оператора выбора, и за что отвечают его элементы?
5.4 В чём различия между полной и неполной формами оператора выбора?
6 Список литературы
6.1 Самоучитель программирования на VBA в Microsoft Office/. —К.: Юниор, 2001. —320 с., ил.
6.1 VBA для "чайников", 3-е издание. : Пер. с англ. — М. : Издательский дом "Вильяме", 2001. — 448 с. : ил. — Парал. тит. англ.
Лабораторная работа № 4 Операторы цикла в vba
1 Цель работы:
1.1 Изучить структуры и особенности применения операторов цикла.
2 Пояснения к работе
2.1 Краткие теоретические сведения
Цикл — многократное повторение последовательности действий по некоторому условию. Известны три типа циклических алгоритмических структур: цикл с предусловием, цикл с постусловием и цикл с параметром. В VBA существуют операторы, реализующие все три типа циклов.
Цикл с предусловием (цикл-пока) — наиболее универсальная циклическая структура. Он организует выполнение операторов, составляющих тело цикла, неизвестное заранее число раз. Реализуется оператором While. Формат оператора:
Do While <условие>
<тело цикла>
Loop
Здесь Do, While, Loop – зарезервированные слова;
<условие> – выражение логического типа;
<тело цикла> – операторы VBA.
Алгоритм работы оператора следующий. Вначале вычисляется значение выражения <условие>. Если <условие> имеет значение True, выполняется <тело цикла>; после чего вычисление значения выражения <условие> повторяется. Если <условие> имеет значение False, оператор прекращает свою работу.
Таким образом, выход из цикла осуществляется, если логическое выражение принимает значение ложь. Истинность логического выражения проверяется вначале каждого прохождения цикла, поэтому тело цикла может не выполняться ни разу.
Цикл с постусловием (цикл-до) позволяет организовать многократное выполнение операторов, если число повторений заранее неизвестно.
Цикл с постусловием может быть записан в одном из следующих видов:
Do Until <условие>
<тело цикла>
Loop
или
Do
<тело цикла>
Loop Until <условие>
Здесь Do, Until, Loop – зарезервированные слова;
<условие> – выражение логического типа;
<тело цикла> – операторы VBA.
Оператор работает по следующему алгоритму. Вначале выполняется <тело цикла>, после чего вычисляется значение логического выражения <условие>. Если его значение есть False, операторы, образующие <тело цикла>, повторяются. В противном случае оператор завершает свою работу.
То есть выход из цикла осуществляется, если логическое выражение принимает значение True (истина). Поскольку значение логического выражения вычисляется в конце каждого прохождения цикла, тело цикла выполнится хотя бы один раз.
Цикл с параметром (цикл со счетчиком, цикл – для) служит для организации циклов с заранее известным числом повторений.
Синтаксис оператора:
For <параметр> = <начальное значение> To <конечное значение> [Step <шаг>]
<тело цикла>
Next
Здесь For, To, Step, Next – зарезервированные слова VBA;
<параметр> – простая переменная порядкового типа ;
<начальное значение> – выражение того же типа что и <параметр>, определяющее начальное значение параметра;
<конечное значение> – выражение того же типа, определяющее конечное значение параметра;
<шаг> – некоторое значение типа <параметр>, задающее, на сколько изменяется значение параметра при каждом проходе цикла;
<тело цикла> – операторы VBA.
Этот оператор организует повторение группы инструкций, образующих <тело цикла>, пока <параметр> изменяется от <начального значения> до <конечного значения> с указанным шагом. Цикл выполняется столько раз, сколько нужно, чтобы <параметр> от <начального значения> достиг <конечного значения>.
При выполнении оператора вначале вычисляется значение выражения <начальное значение> и осуществляется присваивание <параметр> = <начальное значение>. После этого циклически повторяется:
проверка условия <параметр> <= <конечное значение>, если значение выражения <шаг> задано и имеет положительное значение, или <параметр> >= <конечное значение>, если значение выражения <шаг> задано и имеет отрицательное значение;
выполнение <тела цикла>;
изменение значения переменной <параметр> на величину, указанную после слова Step; если <шаг> не указан, он полагается равным 1.
В виде блок-схем эти циклы изображаются следующим образом.
Таблица 1 – Виды циклов.
Цикл с предусловием |
Цикл с постусловием |
Цикл с параметром |
|
|
|
Демонстрационные примеры:
1. Найти сумму десяти случайных чисел.
Напишем программу, воспользовавшись циклами различных видов.
Sub Сумма()
Dim sum1 As Integer, sum2 As Integer, i As Integer
Randomize
‘решение задачи с помощью цикла с предусловием
i = 10
Do While i > 0 ‘цикла выполненяется, пока логическое условие истинно
sum1 = sum1 + Int((10 * Rnd) + 1)
i = i - 1
Loop
MsgBox "Сумма чисел=" & sum1
‘решение задачи с помощью цикла с постусловием
i = 10
Do ‘цикла выполненяется, пока логическое условие ложно
sum2 = sum2 + Int((10 * Rnd) + 1)
i = i - 1
Loop Until i = 0
MsgBox "Сумма чисел=" & sum2
End Sub
Заметим, что особенностью интерпретатора VBA является то, что значения переменных числовых типов перед выполнением процедуры полагаются равными 0. Поэтому в программе отсутствуют команды присваивания вида: sum1 = 0 и sum2=0.
2. 'Найти максимальное из n введенных с клавиатуры чисел.
Приведем два варианта решения задачи с использованием циклов разных видов.
Option Explicit
Sub Max_n_while()
Dim n As Byte, k As Single, i As Byte, Max As Single
n = Val(InputBox("Введите количество чисел"))
i = 1
Do While i <= n
k = Val(InputBox("Введите число", "Ввод чисел"))
If i = 1 Then Max = k
If k > Max Then Max = k
i = i + 1
Loop
MsgBox "Наибольшее из чисел " & Max
End Sub
Option Explicit
Sub Max_n_until()
Dim n As Byte, k As Single, i As Byte, Max As Single
n = Val(InputBox("Введите количество чисел"))
i = 1
Do Until i > n
k = Val(InputBox("Введите число", "Ввод чисел"))
If i = 1 Then Max = k
If k > Max Then Max = k
i = i + 1
Loop
MsgBox "Наибольшее из чисел " & Max
End Sub
Если из текста программ удалить строку: If i = 1 Then Max = k, то программа будет работать корректно только в случае, когда хотя бы одно вводимое число неотрицательно. Это объясняется тем, что начальное значение переменной Max считается равным 0.
3. Найти cумму n первых членов ряда 1, 1/2, 1/3, ... 1/n,…
Option Explicit
Sub Summ_n()
Dim n As Byte, i As Byte, sum As Single
n = Val(InputBox("Введите количество членов ряда"))
For i =1 To n
sum = sum + 1 / i
Next
MsgBox "Сумма " & sum
End Sub
4: Найти сумму всех четных чисел в первой десятке:
Option Explicit
Sub Summa ()
Dim j As Integer, sum As Integer
For j = 2 To 10 Step 2
sum = sum + j
Next
MsgBox "Сумма равна " & sum
End Sub
5. Написать программу, осуществляющий вывод на экран введенного числа после его проверки. Ввод должен завершиться, когда вводимое значение окажется положительным числом.
Sub Пример()
Dim d As Integer
Do
d = Val(InputBox("Введите положительное чиcло", "Ввод числа"))
Loop Until d > 0 And (IsNumeric(d))
MsgBox "Введеное число " & d
End Sub
