Программирование алгоритмов разветвляющейся структуры — КиберПедия 

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Программирование алгоритмов разветвляющейся структуры

2020-11-03 132
Программирование алгоритмов разветвляющейся структуры 0.00 из 5.00 0 оценок
Заказать работу

Теоретические сведения

Простейшей задачей, решаемой на VBA, является создание функций пользователя, имеющих имена. С функциями пользователя можно работать с помощью мастера функций точно так же, как и со встроенными функциями рабочего листа.

 

Создадим, например, функцию пользователя, математически определенную следующим образом: хÎ[-2; 1,5]

Функции пользователя создаются с использованием редактора VBA, после чего с ними можно работать с помощью мастера функций. Функция пользователя является частью программного модуля.

 

Первоначально, на листе Excel создаем ряд значений аргумента х. Выбрать шаг изменения аргумента 0,1. Тогда будет заполнен диапазон А1:А36.

Для создания модуля VBA необходимо выполнить следующие действия:

1. Войти в редактор VBA с помощью команды Сервис- Макрос-Редактор VBA.

2. Выполнить команду Вставка- Модуль (Insert-Module).

3. На листе модуля ввести текст следующей программы:

 

Function Y(x)

    Y = Sin(Application.Pi() * x)*Exp(-2*x)

End Function

 

Пример окна редактора VBA приведен на рисунке 1.

 

Затем перейти на лист Excel, выделить ячейку В1. И вызвать созданную функцию, для этого выполнить следующие действия:

 Вставка—Функция—Категория «Определенные пользователем».

В открывшемся списке выбрать функцию Y, ввести в качестве аргумента адрес ячейки А1 и нажать ОК. Затем растиражировать функцию на все значения аргумента.

Пример вызова функции, приведен на рисунке 2.

 

     
 

 


В VBA имеются большой набор встроенных функций и процедур, использование которых существенно упрощает программирование.

В таблице 1 перечислены математические функции, используемые в VBA.

 

Таблица 1 Математические функции

Функции Возвращаемое значение
Abs Модуль (абсолютная величина) числа
Atn Арктангенс
Cos Косинус
Exp Экспонента, т.е. результат возведения основания натурального логарифма в указанную степень (ех)
Log Натуральный логарифм (основание е=2.71828…)
Rnd Случайное число из интервала [0.1) Если число меньше нуля, то Rnd возвращает каждый раз одно и тоже число, используя аргумент в качестве опорного числа; если число больше нуля или аргумент опущен, то – следующее случайное число в последовательности; если число равняется нулю, то случайное число, возвращенное при предыдущем вызове этой функции. Перед вызовом функции Rnd используйте инструкцию Randomize без аргумента
Sgn Знак числа
Sin Синус
Sqr Квадратный корень из числа
Tan Тангенс
Fix и Int Обе функции, Int и Fix, отбрасывают дробную часть числа и возвращают целое значение. Различие между функциями Int и Fix состоит в том, что для отрицательного значения аргумента число функция Int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, а Fix - ближайшее отрицательное целое число, большее либо равное указанному

 


ПРИМЕР.

Пусть требуется написать программу для вычисления функции, заданной формулой:

Очевидно, что функция имеет два условия. Поэтому следует использовать условный оператор If … Then … Else.

 

Текст программы для расчета этой функции следующий:

 

Function Y(x)

If x < 0 Then

Y = Abs(x) / (1 + x ^ 2) * Exp(-2 * x)

Else

If x < 1 Then

Y = Sqr(1 + x ^ 2)

Else

Y = (1 + Sin(x)) / (1 + x ^ 2) + 3 * x

End If

End If

End Function

Аналогично можно организовать вложенность любого числа If.

2.4. Задание для самостоятельного выполнения.

Напишите пользовательскую функцию, вычисляющую значения функции и постройте с ее помощью график.

Вариант 1

  1. Построить в разных системах координат при хÎ[-2; 1,5] графики функций:

·

·

·

 

Вариант 2

  1. Построить в разных системах координат при хÎ[-1,5; 1,5] графики функций:

·

·

·

 

Вариант 3

1. Построить в разных системах координат при хÎ[-1,8; 1,8] графики функций:

·

·

·

Вариант 4

  1. Построить в разных системах координат при хÎ[-2; 1,8] графики функций:

·

·

·

Вариант 5

  1. Построить в разных системах координат при хÎ[-1,7; 1,5] графики функций:

·

·

·

 

Вариант 6

  1. Построить в разных системах координат при хÎ[-1,5; 1,8] графики функций:

·

·

·

 

 

 

Задание на разработку.

С помощью EXCEL и программы на VBA составить таблицу начисления премии по итогам работы сети трех магазинов с января по декабрь по следующему правилу:

1. Если продукции продано не меньше, чем на 2300 грн., то комиссионные составляют 2%.

2. За первое место начисляется дополнительно 2%, за второе – 1% и т.д.

Таблица для расчета должна содержать следующие поля:

месяц

магазин 1

магазин 2

магазин 3

реализация место премия реализация место премия реализация место премия
                   

Размер полей реализация и место заполнить произвольными данными. Поле премия будет рассчитано с помощью пользовательской функции, которую надо разработать самостоятельно.

3.2. Методика выполнения задания

1. Создание таблицы исходных данных.

2. Сервис ® Макрос ® Редактор Visual Basic.

3. Вставка ® Модуль.

4. Вставка ® Процедура

5. Указать имя: premia.

6. Указать тип процедуры: функция.

7. Создать текст процедуры.

8. Применить разработанную функцию для расчета премии.

 

Теоретические сведения

Простейшей задачей, решаемой на VBA, является создание функций пользователя, имеющих имена. С функциями пользователя можно работать с помощью мастера функций точно так же, как и со встроенными функциями рабочего листа.

 

Создадим, например, функцию пользователя, математически определенную следующим образом: хÎ[-2; 1,5]

Функции пользователя создаются с использованием редактора VBA, после чего с ними можно работать с помощью мастера функций. Функция пользователя является частью программного модуля.

 

Первоначально, на листе Excel создаем ряд значений аргумента х. Выбрать шаг изменения аргумента 0,1. Тогда будет заполнен диапазон А1:А36.

Для создания модуля VBA необходимо выполнить следующие действия:

1. Войти в редактор VBA с помощью команды Сервис- Макрос-Редактор VBA.

2. Выполнить команду Вставка- Модуль (Insert-Module).

3. На листе модуля ввести текст следующей программы:

 

Function Y(x)

    Y = Sin(Application.Pi() * x)*Exp(-2*x)

End Function

 

Пример окна редактора VBA приведен на рисунке 1.

 

Затем перейти на лист Excel, выделить ячейку В1. И вызвать созданную функцию, для этого выполнить следующие действия:

 Вставка—Функция—Категория «Определенные пользователем».

В открывшемся списке выбрать функцию Y, ввести в качестве аргумента адрес ячейки А1 и нажать ОК. Затем растиражировать функцию на все значения аргумента.

Пример вызова функции, приведен на рисунке 2.

 

     
 

 


В VBA имеются большой набор встроенных функций и процедур, использование которых существенно упрощает программирование.

В таблице 1 перечислены математические функции, используемые в VBA.

 

Таблица 1 Математические функции

Функции Возвращаемое значение
Abs Модуль (абсолютная величина) числа
Atn Арктангенс
Cos Косинус
Exp Экспонента, т.е. результат возведения основания натурального логарифма в указанную степень (ех)
Log Натуральный логарифм (основание е=2.71828…)
Rnd Случайное число из интервала [0.1) Если число меньше нуля, то Rnd возвращает каждый раз одно и тоже число, используя аргумент в качестве опорного числа; если число больше нуля или аргумент опущен, то – следующее случайное число в последовательности; если число равняется нулю, то случайное число, возвращенное при предыдущем вызове этой функции. Перед вызовом функции Rnd используйте инструкцию Randomize без аргумента
Sgn Знак числа
Sin Синус
Sqr Квадратный корень из числа
Tan Тангенс
Fix и Int Обе функции, Int и Fix, отбрасывают дробную часть числа и возвращают целое значение. Различие между функциями Int и Fix состоит в том, что для отрицательного значения аргумента число функция Int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, а Fix - ближайшее отрицательное целое число, большее либо равное указанному

 


Программирование алгоритмов разветвляющейся структуры

2.1. Цель работы: изучение методов алгоритмизации и программирования алгоритмов разветвляющейся структуры.


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

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.038 с.