Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Использование подпрограмм (процедуры и функции) ⇐ ПредыдущаяСтр 3 из 3
Использование подпрограмм, не возвращающих значения (процедуры) Процедура является самостоятельной частью кода, которая имеет имя и может содержать аргументы, выполнять последовательность инструкций и изменять значения своих аргументов. Синтаксис описания процедуры: [Private | Public] [Static] Sub Имя [(СписокАргументов)] [инструкции] [Exit Sub] ‘Инструкция Exit Sub приводит к немедленному выходу из процедуры Sub [инструкции] End Sub
Любую процедуру можно вызвать из другой процедуры: ИмяПроцедуры СписокФактическихПараметров
СписокФактическихПараметров – это список аргументов, передаваемых процедуре. Он должен соответствовать по количеству и типу списку, заданному в процедуре при ее описании. Практическое задание Создайте новую процедуру и задайте в ней вызов любой другой процедуры из разработанных в рамках данной лабораторной работы.
Использование подпрограмм, возвращающих значения (функции) Функция аналогична процедуре, но отличается тем, что возвращает в точку вызова основной программы единственный результат. Синтаксис описания функции:
[Public | Private] [Static] Function Имя [(СписокАргументов)] [As Тип] [Инструкции] [Имя = Выражение] [Exit Function] [Инструкции] [Имя = Выражение] End Function
Процедура Function вызывается в выражении по своему имени, за которым список аргументов в скобках. Практическое задание 1. Разработать функцию, осуществляющую расчет стоимости товара с НДС. В качестве аргументов данная функция должна принимать стоимость товара без НДС и ставку НДС. Возвращаемое функцией значение – стоимость товара с НДС. 2. Создать новую процедуру и задайте в ней вызов разработанной функции с целью расчета стоимости товара с НДС, указав при вызове необходимые параметры (стоимость товара без НДС и ставку НДС). Полученную стоимость выведите на экран с помощью сообщения: «Стоимость товара с НДС: ____».
Назначение значений по умолчанию необязательным параметрам Для необязательного параметра можно определить значение по умолчанию. В следующем примере, если значение параметра b не передано в функцию, то ему присваивается указанное по умолчанию значение 10.
Function Сумма (a As Double, Optional b As Double = 10) As Double Сумма = a + b End Function
Соответственно, правильными будут следующие оба вызова функции Сумма:
С = Сумма(5, 10) С = Сумма(5) Практическое задание Доработать предыдущее практическое задание, реализовав в описании функции расчета стоимости без НДС параметр «ставка НДС» в виде необязательного параметра со значением по умолчанию равным 20. Попробуйте задать вызов указанной функции в различных вариантах: исключив из числа параметров ставку НДС, задав ставку НДС, отличную от 20.
Вызов подпрограмм с указанием фактических параметров по имени В случаях использования подпрограмм с большим количеством параметров, особенно когда часть из них не являются обязательными, бывает удобным вызывать такие подпрограммы с указанием фактических параметров по их именам, указанным при описании подпрограммы. При этом соблюдение порядка следования параметров не является обязательным. Например:
С = Сумма(a:=5, b:=10) С = Сумма(b:=10, a:=5) Практическое задание Доработать предыдущее практическое задание, задав вызов функции с указанием параметров по именам.
|
||
Последнее изменение этой страницы: 2018-05-10; просмотров: 136. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |