Оператор условного перехода. Общие сведения.




Оператор условного перехода. Общие сведения.

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

ИЛИ

ИЛИ

ИЛИ

ИЛИ

.

Итак, в качестве примера рассмотрим решение следующей задачи.

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

Даны две окружности с радиусами и с центрами в точках , . Определить характер расположения данных окружностей: пересекаются, касаются, не пересекаются.

Таблица 1-1. Инструкция по выполнению задания

Основные этапы работы Описание этапов
1. Подготовить данные для решения задачи · Включите вкладку ленты «Разработчик»; · Переименуйте «Лист 1», в «Пример» и создайте следующую таблицу:
2. Создать пользовательскую функцию РАСПОКРУЖ() в редакторе VB При решении поставленной задачи учтем, что если расстояние между центрами окружностей больше суммы радиусов и , то эти окружности не пересекаются; если равно сумме радиусов, то касаются; если меньше, то пересекаются. Для записи программного кода задачи будем использовать следующую форму условного оператора: · Запишите программный код задачи, предварительно создав пользовательскую функцию. · Сохраните файл под именем Лаб_работа_11.xlsm (с поддержкой макросов)
3. Решите данную задачу с использованием функции РАСПОКРУЖ() · Используя мастер функций, добавьте функцию РАСПОКРУЖ() из категории «Определенные пользователем» и решите данную задачу. · Добавьте для функции справку «Определяет характер расположения окружностей».

Задачи для самостоятельного решения

Задача 1. Брокер получает процент от суммы сделки. Для сделок, сумма которых менее 150 тыс.р., вознаграждение брокера составит 3,5% от суммы сделки; от 150 до 500 тыс.р. – 4,5% от суммы сделки; для сделок, сумма которых составляет больше 500 тыс.р. – 5% от суммы сделки. Создать пользовательскую функцию, рассчитывающую размер вознаграждения брокера.

Задача 2. Проверить, упорядочены ли три числа a, b и c по возрастанию. Если да, то найти их произведение; иначе сумму чисел возвести в квадрат.

Задача 3. Найти площадь треугольника по формуле Герона, включая проверку условия существования треугольника по трем сторонам. Если треугольник существует, то вывести его площадь, в противном случае – сообщение о невозможности существования треугольника.

Задача 4. Определить, являются ли три числа пифагоровыми (три числа называются пифагоровыми, если квадрат одного из них равен сумме квадратов двух других).

Задача 5. Если первое из двух чисел a и b нечетное, то найти их сумму, в противном случае – их произведение.

Задача 6. Возвести число в квадрат, если оно кратно 7, и увеличить его в 3 раза в противном случае.

Задача 7. Определить номер квадранта, в котором расположена точка M с координатами (x,y).

Задача 8. Рассчитать заработную плату сотруднику с учетом подоходного налога. Подоходный налог высчитывается по следующей схеме: если начисленная зарплата составляет менее 4200 руб., то налог не взимается; если от 4200 руб. до 100 тыс.руб., то он составляет 13% от начисленной суммы; если начисленная зарплата составляет более 100 тыс.руб., то к 13% от разницы начисленной суммы и 100 тыс.руб. прибавляется еще 18200руб.

Задача 9. Рассчитываясь в одном из магазинов, покупатель получает скидку: если количество покупаемого им товара не менее 100, то скидка составляет 10%; если от 50 до 100, то 5%; в остальных случаях скидка не предоставляется. Определить, какую сумму надо заплатить покупателю, если он покупает товар в количестве N штук по цене S руб. каждая.

Задача 10. Определить стоимость билета на поезд в зависимости от расстояния до пункта назначения и стоимости S руб. билета до конечной станции: если расстояние не превышает 500 км, то стоимость S уменьшается на 50%; если от 500 до 1000 км, то на 25%; если больше 1000 км, то стоимость S остается неизменной.

Задача 11. Продавец-консультант получает комиссионные, начисляемые по следующей схеме: если продукции продано не меньше чем на 10000 руб., то процент комиссионных составляет 2% от стоимости реализованной продукции; если меньше чем на 10000 руб. – 1%; если стаж работы продавца-консультанта в торговой точке менее 3 лет, то производится доплата в размере 0,5% от стоимости реализованной продукции. Определить сумму комиссионных продавца-консультанта.

Задача 12. Билет на пригородном поезде стоит 35 руб., если расстояние до станции не больше 20 км; 53 руб., если расстояние более 20 км, но не превышает 75 км; 60 руб., если расстояние больше 75 км. Определить стоимость билета.

Задача 13. Определить сумму, которую заплатит покупатель за приобретение товара в количестве N штук по цене S руб. каждая, если в магазине в зависимости от стоимости покупки предоставляется скидка: если стоимость более 10000 и менее 35000 руб., то скидка составляет 5%, а если более 35 000 руб. – 10%.

Задача 14. Определить стоимость аренды для ЧП в торговом центре с учетом следующих расценок: аренда площади до 20 м2 – 150 руб./м2, аренда площади свыше 150 м2 – 70 руб./м2, остальные площади – 100 руб./м2.

Задача 15. Вычислить значение функции в определенной точке:

a.

b.

c.

Задача 16. По дате рождения сотрудника[1], определить время года, когда он родился. Например, Иванов И.А. родился 12.02.1968 – это «Зима».

Задача 17. В человеческой природе семь времен, которые зовут возрастами: ребенок, отрок, юноша, молодой человек, муж, пожилой, старик. Возраст ребенка—до семи лет; отрок—дважды семь лет; юноша—трижды семь; молодой человек—четырежды семь; муж—семью семь; пожилой—семью восемь лет. А отсюда начинается старость. По дате рожения человека определить его возрастной период.

Задача 18. По дате рождения человека, определить его знак Зодиака. Овен (21.03 – 20.04), Телец (21.04-21.05), Близнецы (22.05-21.06), Рак (22.06-22.07), Лев (23.07-23.08), Дева (24.08-23.09), Весы (24.09-23.10), Скорпион (24.10-23.11), Стрелец (24.11-21.12), Козерог (22.12-20.01), Водолей (21.01-18.02), Рыбы (19.02-20.03).

Задача 19. Из любой текстовой[2] строки, разделенной одним пробелом, извлечь последнее слово.

Задача 20. Дана текстовая строка, разделенная двумя пробелами. Создать пользовательскую функцию возвращающую результат по условию: если длина второго слова больше длины третьего слова, то вывести первое слово; иначе в текстовой строке поменять местами первое и второе слова.


[1] Функции VBA для работы с датами и временем

Функция(аргумент) Действие
1. Day(N) Возвращает день из заданной даты
2. Year(N) Возвращает год из заданной даты, число от 1900 до 9999
3. Month(N) Возвращает месяц из заданной даты
4. Weekday(N,2) Возвращает из даты день недели (2-понедельник)
5. Hour(N) Возвращает из даты часы
6. Minute(N) Возвращает из даты минуты
7. Second(N) Возвращает из даты секунды
8. Date() Возвращает текущую системную дату по системному календарю компьютера

 

[2] Функции VBA для работы с текстом

Функция(аргумент) Действие
1. Val(строка) Преобразует строку в число
2. InStr(поз_курсора, просм_строка, иском_строка) Находит позицию первого вхождения одной строки внутри другой
3. Left(строка, число_симв) Возвращает число первых (слева) символов строки. Если их меньше, чем запрошено, возвращается вся строка
4. Right(строка, число_сим) Возвращает указанное число последних (справа) символов строки
5. Len(строка) Возвращает количество символов в строке
6. Mid(строка, поз_курсора,число_симв) Возвращает текстовый фрагмент из строки
7. & Соединяет текстовые строки. Данный оператор должен быть отделен от текста пробелами

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-05-08 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: