Задание 3
OOo Basic основан на процедурах и функциях, которые задаются ключевыми словами Sub и Function – далее они будут называться процедурами или соответственно функциями. Каждая процедура может вызывать другие процедуры.
Каждый модуль (module) содержит набор процедур (функций). Библиотека (Library) содержит набор модулей. Документ (document) может содержать библиотеку или несколько библиотек. Библиотека может существовать также на уровне Приложения (application level), такого как OOo Calc.
Разница между Sub и Function в том, что функция возвращает значение, а процедура – нет. Макрос на Листинг 2 получает текстовую строку от функции с именем HellowWorldString.
1. Создайте самостоятельно макрос состоящий из процедуры и функции (см. Листинг 3.2.).
2. Усовершенствуйте макрос, добавив в него возможность ввода пользователем своего имени, чтобы программа приветствовала создателя.
3. Покажите результат преподавателю.
Подсказка: используйте функцию InputBox()как в предыдущем разделе.
Листинг 3.2: “Hello world” с использованием процедуры и функции.
Sub HelloWorld Dim s As String s = HelloWorldString() MsgBox s End Sub Function HelloWorldString() As String HelloWorldString = "Hello World" End Function |
Задание 4.
Написать программу на OpenOffice.org Basic для функции пользователя, которая вычисляет получаемую потребителем электроэнергию QH по количеству электроэнергии Q, которое вырабатывается производителем, и величине потерь P (%) при ее передаче: QH=Q(100-P)/100. Заполнить ячейку С2 следующей таблицы с использованием построенной функции пользователя (Рис.10):
Рис. 10. Выбор ячейки для заполнения
Решение задания 4:
Вызовем OpenOffice.org Calc и создадим новую электронную таблицу. Воспроизведем данные, приведенные выше. Вызовем редактор OOo Basic: Сервис=> Макросы=>Управление макросами=>OpenOffice.org Бэйсик... Выберем в диалоге выбора макроса пункт соответствующий названию документа, и нажмём кнопку «Создать». В появившемся окне напишем следующий текст программы :