У вас вопросы?
У нас ответы:) SamZan.net

Для чего нужна процедура Function

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 29.4.2025

Для чего нужна процедура Function?

Итак, функция. Что это такое? Функция выполняет служебное действие, например вычисление, и возвращает значение. Вызвать функцию можно, написав её имя и передав ей аргументы, в нужном месте вашей программы. Чем же полезна функция? Сейчас объясню на очень простом примере! Например, Вы пишите простенькую программу, которая вычисляет среднее арифметическое трёх чисел, потом умножает полученный результат на каждое число и отнимает их сумму. Неважно зачем вам такая программа, это ведь пример ;-). Вот она (пишем в модуле):

Sub Main()

Dim a As Integer   объявляем переменную для первого числа

Dim b As Integer   объявляем переменную для второго числа

Dim c As Integer   объявляем переменную для третьего числа

a = InputBox("Введите первое число") получаем первое число

b = InputBox("Введите второе число") получаем второе число

c = InputBox("Введите третье число") получаем третье число

проделываем нужную операцию над числами

выводим результат на экран

MsgBox (((((a + b + c) / 3) * a) * b) * c) - (a + b +c)

End Sub

Вроде бы всё нормально. А теперь представте себе, что программа начала ширится и формулой приходится пользоваться из разных мест программы и Вы должны поэтому её кругом писать 8:-O !!!

Да, некрасиво получается... Для этого можно воспользоваться функцией, которая будет иметь эту формулу и только ждать своего вызова и ваших чисел ;-)! Напишем такую функцию и назовём её, например FuncX (вне пределов подпрограммы Sub):  объявляем функцию и задаём передаваемые аргументы

Public Function FuncX(a, b, c) As Integer  присваевает себе значение формулы 

FuncX = (((((a + b + c) / 3) * a) * b) * c) - (a + b + c)

End Function

Есть! А теперь Вы можете вызывать функцию из любого места вашей программы, написав её имя и передав три числа a, b и с:

FuncX (a, b, c)  или FuncX(4, 5, 6)

и не надо больше этой длинной формулы! Вместо 

(((((a + b + c) / 3) * a) * b) * c) - (a + b +c)

Теперь можно писать

FuncX(a, b, c)

Неправда это удобней? Надеюсь я обьяснил понятно ;)?

Примечание: передаваемые значения функции изменяются! Напрмер:

Function ABC (X,Y)

ABC = (2 * X) + (2 * Y)

End Function

Теперь X равно 2 * Х, а Y равно 2 * Y, т.е. их значения удвоились. Для того чтобы переданные значения не изменялись то в скобках нужно писать перед аргументом ByVal. Например:

Function ABC ( ByVal X, ByVal Y)

Сами того не подозревая, мы очень часто используем функции. Например InputBox. Смотрите:

A = InputBox (Prompt, Title)

А - это результат, возвращаемый функцией. InputBox - это  имя функции. Prompt и Title - передаваемые значения. Но функция это стандартна.

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://visualprogs.narod.ru/




1. Использование нейросетей для построения системы распознавания речи
2. і.Більшість предметів одягу потребують митних зборів при їх імпорті на територію Сполучених Штатів
3. Производственные отношения и их система
4. Морфофункциональная характеристика изменений антиадгезивных свойств брюшин в зависимости от состояния микроциркуляции
5. Нормативный правовой акт как основной источник российского права
6. реферат дисертації на здобуття наукового ступеня кандидата педагогічних наук Луганськ 2000
7. Реферат- Основные понятия технологии приборостроения
8. філософського становлення обсягу поняття свідомості дати характеристику її складових визначити особистіс
9. Кадровая политика как инструмент управления организацией на примере ОАО ЧАЗ
10. тема заработной платы