Для преподавателя (пример из лекций).
ЗАДАНИЕ
1. Получите вариант задания у преподавателя.
2. По условию задачи разработайте алгоритм решения задачи.
3. По алгоритму напишите программу модуля. Для ввода исходных данных предусмотреть стандартные окна ввода InputBox (рис.1). Для вывода результатов стандартное окно сообщений MsgBox (рис.2). Выполните модуль, проанализируйте результат.
Рис.1 Стандартное окно ввода Рис.2. Окно сообщений.
4. По условию той же задачи разработайте Пользовательскую Форму1. Для ввода данных на Форме разместить поля TextBox, для вывода результатов надписи Label. Пример Формы по материалам лекций приведен на рис.3.
5. Напишите процедуры обработки события – щелчка мышью по кнопке Формы, аналогичную п.1, используя для программирования ввод данных значения полей Формы TextBox, а для вывода результатов свойство Caption надписи Label. Запустите форму на выполнение, проанализируйте правильность результата.
6. Разработайте Пользовательскую Форму2, на которой разместите три кнопки (рис.4).
7. Установите свойство Формы Picture.
8. Напишите процедуры обработки событий – щелчков мышью по кнопкам Формы2, предусматривающих: 1- запуск модуля п.1, 2- запуск Формы1, 3- закрытие Формы 2. Запустите Форму2 на выполнение, последовательно щелкнув по всем кнопкам, проверьте правильность работы программы.
Рис.4. Форма2
Рис.3. Форма1
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
1. Работа выполняется аналогично той, которая рассмотрена в лекции на примере вычисления высот треугольника по их сторонам.
2. Загрузите Excel. Перейдите в редактор VBA – команда СЕРВИС-МАКРОС- Редактор VBA (Alt+F11).
3. Выполните команду Insert- Module.В открывшемся окне Модуля наберите код процедуры в соответствии с разработанным Вами алгоритмом по условию задачи.
Структура процедуры:
Sub ИмяПроцедуры ()
Описание переменных (исходных, промежуточных, выходных), используйте оператор Dim.
Ввод исходных переменных, используйте стандартное окно ввода –
InputBox («Подсказка», «Название окна»). Например, а=InputBox («Введите а», «Ввод»).
Вычисления по условию задачи.
Вывод результата, используйте стандартное окно сообщений MsgBox Строка вывода [, тип кнопок, «Название окна сообщений» ]). Строка вывода формируется из поясняющего текст, объединенного символом & (амперсант) с результатами, переведенными из числового значения в строковое с помощью функции Str(), в строку вывода может быть включена функция перевода на новую строку Chr(13) – соответствующая нажатию на клавишу Enter. Например, MsgBox “Y=” & Str(Y), ? ,”Результат”
End Sub
4. Запустите программу на выполнение– команда Run (F5). Устраните ошибки. Выполните программу, введя исходные данные.
5. Создайте Форму1. В редакторе VBA выполните команду Insert –UserForm.С панели инструментов «Элементы управления» перенесите на Форму нужные по условию задачи Объекты –поля ввода TextBox, надписи Label, Кнопку CommandButton. Для надписей и кнопки измените их свойство Caption (надпись) в окне Свойств, введя надписи, соответствующие условию задачи. Все объекты одного типа на Форме отличаются номером в имени объекта – это отражается в свойстве Name объекта.
6. Создайте процедуру обработки кнопки. Для этого дважды щелкните мышью по кнопке. Откроется окно модуля Формы1, где будут сгенерированы две строки кода:
Private Sub CommandButton1_Click()
End Sub
Между этими строками наберите код процедуры, он будет отличаться от кода модуля вводом исходных данных и выводом результатов.
Для ввода исходных данных используйте значения полей TextBox, например, а= TextBox1.Value.
Для вывода используйте надпись label. Например, Label5.Caption = Str(Y) Варианты заданий
№
| ВЫЧИСЛИТЬ
|
| Стоимость 1кв.метра= Стоимость квартиры / Общий метраж
|
| % жилого фонда = Жилой метраж / Общий метраж *100
|
| Пенсионный налог = (Оклад+Оклад*0,15)* 0,01
|
| Диаметр взрывной скважины = Диаметр долота* Коэффициент разбуривания
|
| Длина скважины = Высота уступа + Длина перебура
|
| Длина фронта работ по руде = Количество уступов * Длина рудного тела
|
| Длина фронта работ по породе = Количество уступов * Длина карьера
|
| Промышленные запасы = Объем * Плотность * Коэффициент извлечения
|
| Объем породы = Объем карьера – Объем полезного ископаемого
|
| Рабочий парк экскаваторов = Списочный парк / коэффициент резерва
|
| Высота уступа = 1,5 * Высота черпания экскаватора
|
| Длина съезда = Высота уступа / Уклон
|
| Расход э/энергии = Удельный расход* Производительность насоса * Время работы
|
| Радиус черпания минимальный = Радиус вращения + Безопасная зона
|
| Гидравлический радиус = Площадь сечения / Периметр
|
| Скорость углубки = Высота уступа/ Время подготовки горизонта
|
| Количество концентрата = Выход концентрата, доли единицы * Количество руды
|
| Количество отходов = Количество руды – Количество концентрата
|
| Выход отходов = 100 – Выход концентрата,%
|
| Количество уступов в одновременной работе = Ширина карьерного поля / Ширина рабочей площадки
|
Для преподавателя (пример из лекций).
Пример задачи. Вычислить высоты треугольника, если известны его стороны: a, b, c. Используйте формулы, приведенные в блок-схеме алгоритма.
Задание1. Текста Модуля
Sub treugolnik()
‘ОПИСАНИЕ ПЕРЕМЕННЫХ
Dim a As Single, b As Single, c As Single ' исходные данные
Dim p As Single, t As Single 'промежуточные данные
Dim ha As Single, hb As Single, hc As Single 'результат
‘ВВОД ИСХОДНЫХ ДАННЫХ
a = InputBox("Ввести a", "Исходные данные")
b = InputBox("Ввести b", "Исходные данные")
c = InputBox("Ввести c", "Исходные данные")
‘ВЫЧИСЛЕНИЯ
p = (a + b + c) / 2
t = 2 * Sqr(p * (p - a) * (p - b) * (p - c))
ha = t / a: hb = t / b: hc = t / c
‘ВЫВОД РЕЗУЛЬТАТА
MsgBox "ha=" & ha & chr(13) & "hb=" & hb & chr(13) _
& "hc=" & hc, vbDefaultButton1, "РЕЗУЛЬТАТ"
End Sub
Задание 4. Текст процедуры обработки кнопки Вычислить Формы1
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|