VBA_КОНТРОЛЬНАЯ ОБЬЯСНЕНИЕ. Контрольная работа по дисциплине Информатика, раздел Программирование на vba
Скачать 301 Kb.
|
ОглавлениеОглавление 7 ВВЕДЕНИЕ Visual Basic for Applications (VBA) – это язык программирования разработанный специально для приложений Microsoft Office. Среди его достоинств возможно отметить следующие: широко доступен, простой в освоении; позволяет быстро получать результаты – создавать приложения, решающие различные прикладные задачи. Данные свойства делают язык программирования VBA предпочтительным для освоения его студентами экономического профиля обучения. Цель контрольной работы - подтверждение квалификации исполнителя: знания основ языка программирования VBA и умения создавать макросы для автоматизации несложных практических вычислительных операций. Задачи работы: - выполнение заданий в соответствии с закрепленным вариантом; - оформление работы в соответствии с действующими требованиями. Контрольная работа содержит 5 заданий: одно теоретическое и 4 практических. Каждое практическое содержит: постановку задачи; блок-схему; программный код макроса с поясняющими комментариями; решение контрольного варианта; фрагменты изображений на мониторе, поясняющие процесс выполнения макроса. В конце работы представлены краткое заключение и список использованных источников. 1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ VBA. АЛГОРИТМ: ОПРЕДЕЛЕНИЕ, СВОЙСТВА, ВИДЫ Алгори́тм — набор инструкций, описывающих порядок действий исполнителя для достижения некоторого результата. Свойства алгоритма. Дискретность — алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени. Детерминированность (определённость). В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. Т.о., алгоритм выдаёт один и тот же результат для одних и тех же исходных данных. Понятность — алгоритм должен включать только те команды, которые доступны исполнителю и входят в его систему команд. Завершаемость (конечность) — при правильно заданных начальных данных алгоритм должен завершать работу и выдавать результат за определённое число шагов. Массовость (универсальность). Алгоритм должен быть применим к разным наборам начальных данных. Результативность — завершение алгоритма определёнными результатами. Формы представления алгоритмов: табличный, словесный, графический, программный. Виды алгоритмов: линейный, условный, циклический. Линейный - выполнение команд в порядке их естественного следования. Условный (ветвление) - в зависимости от поставленного условия выбирается один из вариантов. Циклический - в алгоритме есть повторяющиеся последовательности. 2. ЛИНЕЙНАЯ ПРОГРАММА 2.1. Сведения о задании Содержание задания. Даны две точки 3-х мерного пространства с координатами х1у1z1 и х2у2z2. Найти расстояние между ними. Пояснения к заданию. Процедура рассчитывает расстояние между двумя точками 3-х мерного пространства. Для расчета используется формула (2.1) r2 = (x1-x2)2 + (y1-y2)2 +(z1-z2)2 (2.1) Здесь x1, y1, z1 – координаты 1-й точки, а x2, y2, z2 – координаты 2-й точки. Процедура имеет имя RastProstr и расположена на Лист1 файла КР VBA var16.xlsm. При ее вызове вводятся координаты двух точек. В качестве результата – расстояние между ними. Ввод и вывод данных осуществляется с использованием Windows диалога. Блок-схема процедуры представлена на рисунке 2.1. Рис.2.1. Болк-схема процедуры RastProstr 2.2. Программный код процедуры RastProstr ' Процедура расчета расстояния между двумя точками пространства Public Sub RastProstr() ' Объявление переменных с плавающей точкой 'x1,y1,z1 - координаты первой точки Dim x1 As Single, y1 As Single, z1 As Single 'x2,y2,z2 - координаты второй точки Dim x2 As Single, y2 As Single, z2 As Single 'r - расстояние между точками Dim r As Single ' Объявление текстовых переменных Dim strX1 As String, strY1 As String, strZ1 As String Dim strX2 As String, strY2 As String, strZ2 As String ' Ввод координат 1-й точки с использованием Windows диалога strX1 = InputBox("Введи Х1") strY1 = InputBox("Введи У1") strZ1 = InputBox("Введи Z1") 'Перевод текстовых переменных в числовые с плавающей запятой x1 = CSng(strX1): y1 = CSng(strY1): z1 = CSng(strZ1) ' Ввод координат 2-й точки с использованием Windows диалога strX1 = InputBox("Введи Х2") strY1 = InputBox("Введи У2") strZ1 = InputBox("Введи Z2") 'Перевод текстовых переменных в числовые с плавающей запятой x2 = CSng(strX1): y2 = CSng(strY1): z2 = CSng(strZ1) 'Расчет расстояния между точками r = Sqr((x1 - x2) ^ 2 + (y1 - y2) ^ 2 + (z1 - z2) ^ 2) ' Вывод результата с использованием Windows диалога MsgBox "Первая точка X1=" & x1 & " Y1=" & y1 & " Z1 =" & z1 & Chr(10) & "Вторая точка X2=" & x2 & " Y2=" & y2 & " Z2 =" & z2 & Chr (10) & "Расстояние R= " & r, vbOKOnly, "Расстояние между двумя точками пространства" End Sub 2.3. Решение контрольного варианта Исходные данные: координаты 1-й точки: x1 = 1 , y1 = 1 , z1 = 1 ; координаты 2-й точки: x2 = 2 , y2 = 2 , z2 = 2 . Результат – 1,732051 . Окно ввода координат точек представлено на рисунке 2.2. Рис. 2.2. Окно ввода данных Окно вывода данных на экран представлено на рисунке 2.3. Рис.2.3. Окно вывода данных на экран 3. РАЗВЕТВЛЯЮЩАЯСЯ ПРОГРАММА 3.1. Сведения о задании |