Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

И примеры их программирование




Разветвляющихся структур

Базовые алгоритмы

 

Алгоритмы разветвляющихся структур позволяют описывать широкий класс задач:

· Вычисление значений сложных функций, зависящих от условий.

· Нахождение максимума и минимума среди нескольких переменных.

· Выбора различных путей вычислительного процессаи т.д.

 

В примерах 4.4.3-1 – 4.4.3-6 описаны алгоритмы и процедуры наиболее часто встречающихся задач, включающие базовые алгоритмы разветвляющих структур.

Ввиду сложности понимания и оформления процедур - Sub и процедур - Function необходимо сделать несколько замечаний.

Если процедура не содержит ни входных, ни выходных параметров (является автономной функционально полной функцией), то она может быть оформлена как процедура - Sub и как процедура - Function.

Если процедура содержит несколько входных параметров (с атрибутом ByVal) и несколько выходных параметров (с атрибутом ByRef), два и более, то эту процедуру следует оформлять как процедуру - Sub.

Если процедура содержит несколько входных параметров (с атрибутом ByVal) и один выходной параметр (с атрибутом ByRef), то она может быть оформлена и как процедура - Sub, и как процедура - Function.

Этими замечаниями воспользуемся при написании процедур следующих примеров.

 

Пример 4.4.3-1.Написать процедуру вычисления значения функции:

1, если x = 0;

y(x)=

Sin(x), если х > 0 или х < 0, где x – вводимое значение.

Схема алгоритма и программный код процедуры приведены на рис. 4.4.3-1. Процедуры vvodDbl2() и vivodDbl2() взяты из 4.3.4-2.

 

Function Pr431() As Double Dim x As Double Dim y As Double x = vvodDbl2("Ввод x = ",TextBox1) If x = 0 Then y = 1 Else y = Sin(x) vivodDbl2(у, " у= ",TextBox2) Return y End Function

Рис.4.4.3-1. Схема алгоритма и программный код процедуры Pr431()

проекта Пример 4.3-1

Процедура - Function Pr431() может быть вызвана, как на рис. 4.4.3-2.

 

Dim YY As Double YY=Pr431()

Рис.4.4.3-2. Пример вызова процедуры Pr431()

проекта Пример 4.3-1

Function Pr433(ByVal x As Double ) As Double Dim y As Double If x = 0 Then y = 1 Else y = Sin(x) Return y End Function

Рис.4.4.3-3. Схема алгоритма и программный код процедуры Pr433()
проекта Пример 4.3-1

Если процедура- Function не будет содержать ввода и вывода данных, то она будет выглядеть, как на рис. 4.4.3-3. В этом случае необходимо использование параметра функции для передачи значения x в вызываемую процедуру - Function Pr433().

Процедура - Function Pr433() может быть вызвана из любой другой процедуры или из модуля формы, например, как на рис. 4.4.3-4.

 

Dim YY, x As Double x = vvodDbl2("Ввод x=", TextBox1) YY = Pr433(x) vivodDbl2(YY," YY", TextBox2)

 

Рис.4.4.3-4. Пример вызова процедуры Pr433()

проекта Пример 4.3-1

Оформим решение примера как процедуру - Sub. Программный код процедуры- Sub и соответствующее обращение к ней приведены на рис. 4.4.3-5 и рис. 4.4.3-6 соответственно. При создании процедуры типа Sub необходимо ввести еще один параметр yy, который передает в процедуру значение параметра по ссылке (ByRef), так как именно через этот параметр происходит возврат результата работы процедуры- Sub в вызывающую процедуру. Здесь xx и yy – фактические параметры, на которые заменяются формальные параметры x и y при работе (вызове) процедуры Pr435().

Sub Pr435(ByVal x As Double, ByRef y As Double) If x = 0 Then y = 1 Else y = Sin(x) End Sub

Рис.4.4.3-5. Схема алгоритма и программный код процедуры Pr435()
проекта Примера 4.3-1

Dim XX, YY As Double XX=vvodDbl2("Ввод x=", TextBox1) Pr435(XX, YY) vivodDbl2(YY,"Значение функции YY", TextBox2)

 

Рис. 4.4.3-6. Схема алгоритма и программный код процедуры Pr435()
проекта Пример 4.3-1





Поделиться с друзьями:


Дата добавления: 2017-01-13; Просмотров: 229; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.