Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ExceLab2 (Таб.разветвл.функций).doc
Скачиваний:
7
Добавлен:
20.11.2018
Размер:
222.21 Кб
Скачать

Лабораторная работа № 2 Табулирование разветвляющихся функций Постановка задачи

На листе "Лаб_2" построить таблицу значений и график разветвляющейся функции. Описание функции, интервал и шаг изменения аргумента определяются индивидуальным заданием, совпадающим с заданием к первой лабораторной работе. Первая работа выполняется без учета разветвлений. Этот факт позволяет контролировать правильность решения, получаемого при выполнении этой работы, сравнивая его с результатами выполнения первой работы, записанными на листе "Лаб_1" этой же книги.

В решении задачи для вычисления значений функций, определяющих ветви разветвляющейся функции, средствами VBA следует реализовать две или три (в зависимости от числа ветвей) функции F1V(x,a,…), F2V(x,a,…), F3V(x,a,…). Вычисление разветвляющейся функции реализуется дважды: во-первых, используя функцию ЕСЛИ программы Excel, и, во‑вторых, в среде как функцию пользователя QRF(x,a,..). Набор параметров в описаниях функций VBA должен соответствовать набору параметров, использованному в задании.

Методика выполнения лабораторной работы

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

Диапазон изменения аргумента функции F(x) определяется заданием начального и конечного значений аргумента Хнач, Хкон и приращения Dx. В рассматриваемом примере определим значения Хнач = -2, Хкон = 2, Dx = 0,2.

Параметры функции "", "b", "α", "β", входящие в описание функции F(x), вводятся с клавиатуры для реализации конкретного варианта расчетов.

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

На рис. 1, приведенном ниже, дана блок-схема алгоритма вычисления значения разветвляющейся функции F(x).

Рис. 1. Блок-схема алгоритма вычисления значения функции F(x)

Порядок выполнения работы:

  1. В первых строках листа "Лаб_2" выполнить ввод информационной части, определяющей постановку задачи. Фрагмент документа, сформированного на листе "Лаб_2", приведён на рис. 2.

Рис. 2 Фрагмент результирующего документа, формируемого при выполнении лабораторной работы № 2

  1. В ячейки А11, В11, С11, D11, Е11 и F11 внесены имена функций, определяющие заголовки столбцов таблицы.

  2. Для заполнения столбца значений аргумента Х в ячейку А12 введём ссылку "=B6" - на ячейку В6, в которую введено значение Хнач . В ячейку А13 введём формулу "=A12+$E$7" и протянем эту формулу до ячейки А32, в которой будет получено значение Х равное определенному в постановке задачи значению Хкон.

  3. Для вычисления значения функции F(x) в ячейку В12 введём формулу, реализующую алгоритм вычисления разветвляющейся функции. Нажмём кнопку "=" в строке формул и вызовем окно мастера функций. В списке функций или в окне "Мастер функций - шаг 1 из 2" в категории "Логические" выбираем функцию "ЕСЛИ".

Рис. 3. ДО "Мастер функций", обеспечивающее выбор функции

  1. Открывается ДО функции "ЕСЛИ", для реализации 1-го, 2-го и 3-го блоков алгоритма блок-схемы

Рис. 4. ДО логической функции ЕСЛИ

  1. В строку ввода "Логическое выражение", вводим выражение "A12<$B$10", соответствующую условию "Х < α". Для этого последовательно выполняем следующие действия:

  • активизируем поле ввода строки "Логическое выражение";

  • УМ в поле ячейки А12, ЩЛК. В поле ввода формируется ссылка на ячейку А12;

  • вводим с клавиатуры символ "<";

  • УМ в поле ячейки В10, в которой записано значение параметра α, ЩЛК и F4. Формируется абсолютная ссылка на ячейку: $B$10. При вычислении этого выражения для значения Х равного Хнач справа от поля ввода появляется значение "ИСТИНА";

  • активизируем поле ввода строки "Значение_если_истина" и вводим в это поле выражение, обеспечивающее вычисление первой ветви функции: $B$9+exp($D$9*A12);

  • в результате в ДО "ЕСЛИ" получаем оформленные поля ввода "Логическое выражение" и "Значение_если_истина".

Рис. 5. Окно "ЕСЛИ" для определения значения функции на первой ветви

  • В поле ввода "Значение_если_ложь" необходимо ввести оператор, позволяющий реализовать действия, определяемые 4-м и 5-м блоками блок-схемы. Повторное обращения к функции "ЕСЛИ", обеспечивает разветвление алгоритма для вычисления второй и третьей ветвей функции F(x). Активизируем поле ввода строки "Значение_если_ложь";

  • УМ в поле "Имя" строки формул и ЩЛК по имени функции "ЕСЛИ", после чего открывается второе окно для функции ЕСЛИ;

  • в его поля вводим выражения, показанные на рис. 6.

Рис. 6. Окно функции "ЕСЛИ" для определения значений на второй и третьей ветвях

  • Нажимаем кнопку ОК в этом окне. В результате в ячейку В(12) вносится значение функции F(X), а в строке формул отображается формула, соответствующая алгоритму вычисления разветвляющейся функции.

=ЕСЛИ(A12<$B$10;$B$9+EXP($D$9*A12);ЕСЛИ(A12<=$D$10;($B$9+$D$9*A12)/(1+A12);$B$9/($D$9*A12)))

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

  • Протягиваем эту формулу от ячейки В12 до ячейки В32 и получаем столбец, заполненный значениями разветвляющейся функции.

При вводе формул очень важно правильно определить ссылки, которые не должны изменяться в процессе "протягивания" формулы по ячейкам таблицы, и сделать их абсолютными (нажатием функциональной клавиши F4 или вводом символов $). В приведенной выше формуле "ЕСЛИ", абсолютными являются ссылки на ячейки со значениями параметров функции "" - ссылка $B$9, "b" - ссылка $D$9, "α" - ссылка $B$10, "β" - ссылка $D$10.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]