Ресурсы компании не безграничны. Пришло время автоматизировать учет в нашем магазине. А также немного помочь нашей бухгалтерии. Мы очень много всего продаем, и они не успевают отчитываться перед разными службами. К тому же, налог с продаж в нашем магазине составляет губительные 73 %.
Необходимо реализовать функцию, которая будет учитывать сумму для выплаты налогов со всех проданных товаров. В качестве аргумента функция принимает стоимость проданного товара. Вычисляет и накапливает сумму для уплаты налога с продаж.
- Создайте функцию, принимающую требуемое количество аргументов.
- В теле функции вычислите сумму налога, используя налоговую ставку.
- Прибавьте эту сумму к уже вычисленным ранее суммам.
- Вызовите созданную функцию несколько раз, передавая различную стоимость товаров.
- Выведите информацию о том, сколько налогов следует уплатить на текущий момент, в виде:
Налог с продаж (73 %), к оплате: 7373 Q
Скоро праздники. И все стали заказывать подарочную упаковку. В итоге она быстро заканчивается. Мы должны сразу при заказе указывать, сможем мы упаковать заказ или нет.
Реализуйте функцию, которая принимает на вход габариты коробки, и возвращает истину, если мы упакуем этот заказ, и ложь, если не упакуем. Функция должна учитывать остатки после упаковки предыдущих заказов.
Сейчас у нас имеется 30 м<sup>2</sup> упаковочной бумаги.
- Создайте функцию, которая будет сообщать, упакуем мы заказ или нет.
- Принимать она должна три аргумента, габариты упаковки (ширина, высота и длина в метрах).
- Вычислите площадь упаковочной бумаги, которая потребуется.
- Убедитесь, что бумаги достаточно. Если это так, пересчитайте, сколько бумаги осталось.
- Верните истину, если бумаги достаточно, и ложь, если нет.
- Вызовите функцию несколько раз, передавая различные габариты коробки.
- Для каждого вызова выведите строку вида:
Заказ (1/0.2/0.7 м) упакован, осталось упаковочной бумаги 28 м2
Заказ (100/30/7 м) не упакован, осталось упаковочной бумаги 28 м2
Сейчас служба доставки использует пять телепортов для доставки заказов. Вещь хрупкая и к тому же быстро разряжается. Данные о заряде каждого телепорта хранятся в массиве [ 7, 2, 1, 4, 8 ], то есть заряд первого телепорта — 7, второго — 2, третий почти разрядился — 1 и так далее.
После каждого использования телепорта сотрудник должен вручную проверять, не разрядился ли телепорт полностью и если да, то поставить его на зарядку (а это длительный процесс). К сожалению, сотрудники иногда забывают это сделать и возникают задержки с доставкой заказов.
Руководство службы доставки попросили реализовать для них автоматическое обновление заряда в массиве и выдачу его значения в консоль.
Создадим функцию-счетчик для каждого телепорта, которая будет вызываться при отправке и обновлять заряд в массиве автоматически. Функция должна выводить:
Телепорт 2 недоступен, перезаряжается(если текущий заряд равен нулю);Телепорт 3 использован, заряд — 0 единиц, требуется перезарядка!(если перед вызовом функции текущий заряд был равен 1);Телепорт 1 использован, заряд — 6 единиц, где1— номер телепорта (индекс в массиве при этом равен 0), а6— заряд из массива после использования.
- Создайте массив для хранения данных о заряде телепортов, заполните начальными значениями (7, 2, 1, 4 и 8).
- Создайте пустой массив для хранения функций-счетчиков.
- В цикле для каждого телепорта создайте функцию, которая проверяет заряд телепорта из массива, если заряд больше нуля, уменьшает заряд на единицу в массиве (если только он не равен нулю) и выводит информацию о состоянии телепорта (как указано в списке выше).
- Поместите функцию в массив.
- После цикла вызовите несколько раз каждую из функций в созданном массиве. Результат должен быть примерно такой:
Телепорт 2 использован, заряд — 1 единиц
Телепорт 1 использован, заряд — 6 единиц
Телепорт 3 использован, заряд — 0 единиц, требуется перезарядка!
Телепорт 5 использован, заряд — 7 единиц
Телепорт 4 использован, заряд — 3 единиц
Телепорт 5 использован, заряд — 6 единиц
Телепорт 2 использован, заряд — 0 единиц, требуется перезарядка!
Телепорт 2 недоступен, перезаряжается
Инструкция по выполнению домашнего задания:
- Зарегистрируйтесь на сайте Repl.IT.
- Перейдите в раздел my repls.
- Нажмите кнопку Start coding now!, если приступаете впервые, или New Repl, если у вас уже есть работы.
- В списке языков выберите JavaScript.
- Код пишите в левой части окна.
- Посмотреть результат выполнения файла можно, нажав на кнопку Run. Результат появится в правой части окна.
- После окончания работы нажмите кнопку Share и скопируйте ссылку из поля Share link.
- В личном кабинете на сайте netology.ru в поле комментария к домашней работе вставьте скопированную ссылку и отправьте работу на проверку.
Никаких файлов прикреплять не нужно.