Материал: Ивличева Н.А. Информиционные системы... Практикум Ч. 1

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

11

6. Рассчитайте сумму по столбцу. Таким образом, расходы на оплату услуг сотовой связи по первому тарифному плану составляют 447,41р.

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

расчета расходов по остальным тарифным планам:

Second_plan

Third_plan

Fourth_plan

Fifth_plan

Sixth_plan Seventh_plan

При создании кода функции Fifth_plan учтите, что пятый тарифный

план использует поминутную тарификацию. При такой тарификации неполная минута разговоров оплачивается так же, как и полная. Для подсчета количества минут разговора используйте выражение int(counting/60)+1, где int() – взятие целой части числа.

Рассчитайте расходы при использовании каждого тарифного плана.

Определение оптимального тарифного плана

В свободной ячейке Листа 1 найдите минимальное значение расходов на

оплату услуг из всех тарифных планов. Для этого используйте статистическую функцию МИН().

Выведем название оптимального тарифного плана. Для этого сначала определим, на каком месте в массиве итоговых расходов находится минимальное число. Сделаем это с помощью функции ПОИСКПОЗ() из категории Ссылки и массивы. Эта функция имеет следующий синтаксис:

ПОИСКПОЗ(искомое_значение; массив_итоговых_расходов; 0)

В свободной ячейке Листа 1 найдите, на каком месте в массиве итоговых расходов находится значение, выдаваемое функцией МИН(). (Номер элемента

массива называют его индексом.)

Теперь выясним, какой тариф фигурирует под номером, найденным функцией ПОИСКПОЗ. Сделаем это с помощью функции ВЫБОР() из категории Ссылки и массивы. Эта функция имеет следующий синтаксис:

ВЫБОР(номер_индекса; значение1; значение2;…)

В свободной ячейке Листа 1 найдите, какой тариф фигурирует под номером, найденным функцией ПОИСКПОЗ. В качестве аргументов Значение1, Значение2,... указывайте названия соответствующих тарифов из шапки таб-

лицы 1.2.

Определим оптимальный тариф без использования вспомогательных вычислений. Для этого в качестве аргументов функций будем указывать не ссылки

12

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

Последней используется функция ВЫБОР(), поэтому вставку функций следует начинать с нее.

Всвободную ячейку Листа 1 вставьте функцию ВЫБОР().

Вкачестве аргумента Номер_индекса используется результат вычисления функции ПОИСКПОЗ(). Поместите курсор в

поле Номер_индекса, затем откройте список в левой части строки формул и выберите функцию ПОИСКПОЗ(). При этом откроется окно аргументов функции ПОИСКПОЗ(). В качестве аргумента Искомое_значение используется результат вычисления функции МИН(). Поместите курсор в поле Искомое_значение и с помощью списка в строке формул выберите функцию МИН().

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

Аккуратно введите все аргументы композиции функций, руководствуясь выполненным заданием и указанным ниже синтаксисом.

=ВЫБОР ( ПОИСКПОЗ ( МИН (массив_итоговых_расходов); массив_итоговых_расходов; 0); тариф1; тариф2; ...; тариф7)

Уточнение пятого тарифного плана

При обработке пятого тарифного плана выражение для подсчета оплачиваемых минут разговора дает неверный результат, если количество минут целое, то есть, если int(counting/60)=counting/60. В этом случае единицу к це-

лой части частного прибавлять не следует, и количество минут разговора определяется по формуле counting/60.

Для выполнения различных действий в зависимости от истинности или ложности некоторого условия в Visual Basic используется условный оператор, имеющий синтаксис:

If условие Then конструкции_для_обработки_истинного_условия

Else

конструкции_для_обработки_ложного_условия

End If

Откройте окно редактора с кодом функции Fifth_plan. Реализуйте

подсчет количества минут разговора с использованием условного оператора.

13

ЗАДАНИЕ 2. МОДЕЛИРОВАНИЕ СКОРИНГОВОЙ СИСТЕМЫ

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

Задача

Смоделируйте скоринговую систему с изменяемыми коэффициентами, создав анкету на основе списков, используя встроенные функции и макросы.

Заполнение скоринговой таблицы

Запустите Excel, присвойте Листу 1 имя Скоринговая таблица и

введите данные из таблицы 2.1. Для совпадения адресации ячеек с пособием данные вводите с первой строки листа.

Таблица 2.1 – Скоринговая таблица

Категория

Значение

Коэффициент

Возраст

до 25 лет

10

Возраст

от 25 до 35 лет

15

Возраст

от 35 до 45 лет

35

Возраст

старше 45 лет

20

Состоит ли в браке

Да

30

Состоит ли в браке

Нет

10

Стаж работы

до 1 года

5

Стаж работы

от 1 года до 3 лет

10

Стаж работы

от 3 лет до 6 лет

15

Стаж работы

больше 6 лет

15

Наличие кредита в прошлом

Да

30

Наличие кредита в прошлом

Нет

10

Наличие автомобиля

Да

40

Наличие автомобиля

Нет

10

Количество несовершеннолетних детей

Нет

10

Количество несовершеннолетних детей

Один

25

Количество несовершеннолетних детей

Двое или трое

20

Количество несовершеннолетних детей

Четыре и больше

5

Образование

Высшее

25

Образование

Среднее

10

Образование

Среднее специальное

15

Место проживания

Собственная квартира или дом

35

Место проживания

Съемная квартира

5

Место проживания

Муниципальное жилье

10

Рассчитайте максимальный коэффициент по каждой категории. Для этого выделите любую ячейку в таблице и выполните команду меню Данные – Итоги. Заполните поля диалогового окна по образцу, приведенному на

14

рисунке 2.1, и нажмите кнопку ОК.

Рисунок 2.1

Вслучае правильного заполнения занятыми окажутся 34 строки. Заполните ячейки А36 и А37 текстом:

Вячейку В36 введите формулу для подсчета суммы максимального значения баллов в каждой сравниваемой категории. В ячейку В37 введите значение

процента 70%. При этом строки 36 и 37 примут вид:

Оформление анкет

Перейдите на Лист 2 и переименуйте его, присвоив ему имя Анкета. Введите в ячейки столбца А названия категорий и немного увеличьте вы-

соту строк:

Для заполнения анкеты используем автоматические элементы управления – поля со списком. Элементы управления позволяют придать интерактивность проекту.

Для вставки элементов управления отобразите с помощью команды меню Вид – Панели инструментов – Формы панель работы с элементами формы.

15

Выберите на панели элемент управления Поле со списком и начертите мышью прямоугольник поля на ячейке В1.

Настройте действие списка. Для этого выделите его, щелкните на нем правой кнопкой мыши и выберите пункт Формат объекта. Перейдите на вкладку Элемент управления и заполните поля по образцу, показанному на ри-

сунке 2.2.

Рисунок 2.2

Замечание. В поле Формировать список по диапазону указывается адрес диапазона ячеек, содержащих возможные значения в указанной категории (возможные значения возрастов на листе Скоринговая таблица). В поле Связь с

ячейкой в нашем случае указывается адрес ячейки, поверх которой расположено поле со списком.

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

Проверьте правильность функционирования списков – при открытии списка он должен выдавать верные значения для категорий.

Теперь настроим обработку списков так, чтобы при выборе элемента списка в столбце С отображалось значение соответствующего коэффициента из скорин-

говой таблицы. Для этого воспользуемся функцией ВЫБОР().

Выделите ячейку С1 и выполните команду меню Вставка – Функция, в категории Ссылки и массивы найдите функцию ВЫБОР.

В поле Номер индекса укажите адрес ячейки, с которой связан первый список (В1), поля Значение1, … содержат ссылки на ячейки со значениями ко-

эффициентов, соответствующих элементам из поля со списком (эти данные расположены в столбце С листа Скоринговая таблица).

Источник: https://studfile.net/preview/16409033/