Skip to content

Latest commit

 

History

History
93 lines (75 loc) · 7.78 KB

README.md

File metadata and controls

93 lines (75 loc) · 7.78 KB

Домашнее задание к лекции 1.4 «Функции»

В магазине появилась возможность оформить дополнительное гарантийное обслуживание на любой товар: на 1 год за 1250 Q и на 2 года за 2300 Q.

Вдобавок ко всему, на товаре можно сделать гравировку с любой надписью. Стоимость надписи – 11 Q за 1 слово.

При оформлении заказа клиент может выбрать необходимые ему функции, в том числе доставку. Данные о стоимости доставки возьмите из задания к лекции «Управляющие конструкции».

Задача № 1

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

Процесс реализации

  1. Создайте функцию, принимающую нужное количество аргументов на вход.
  2. Определите, на какое количество лет приобретается дополнительное гарантийное обслуживание.
  3. Предусмотрите вариант, когда услуга не выбрана.
  4. В качестве результата работы функции возвратите вычисленную стоимость.
  5. Вызовите функцию.
  6. Выведите результат работы функции в консоль в формате:
Дополнительное гарантийное обслуживание: 1250 Q

Задача № 2

Напишите функцию, которая будет принимать на вход строку с надписью для гравировки. На выход функция отдает стоимость для гравировки. Если строка пустая или равна undefined, то цена гравировки равна 0.

Процесс реализации

  1. В переменную запишите строку текста, которую нужно будет выгравировать.
  2. Создайте функцию, принимающую в качестве аргумента строку.
  3. Воспользуйтесь методом split, чтобы получить массив слов, по аналогии с примером ниже:
var string = 'Это строка из нескольких слов';
var words = string.split(' ');
console.log(words);
  1. Предусмотрите универсальный способ расчета стоимости гравировки от количества слов. Мы не ограничиваем клиентов по длине надписи.
  2. Верните в качестве результата работы вычисленную стоимость.
  3. Выведите результат работы функции в консоль в формате:
Подарочная упаковка и гравировка: 55 Q

Подробнее про метод split читайте в документации.

Задача № 3

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

Процесс реализации

  1. Создайте функцию, принимающую нужное количество аргументов.
  2. Проверьте, нужна ли доставка клиенту.
  3. Если да, то сверьте название введенной области с доступными областями доставки.
  4. Если название верное и доставка в квадрант осуществляется, то посчитайте стоимость и верните сумму в качестве результата работы функции.
  5. Если доставка клиенту не нужна, то результатом функции должен быть 0.
  6. Если область доставки введена неверно или в данную область доставка не осуществляется, то результатом функции должен быть NaN.
  7. Выведите результат работы функции в консоль в формате:
    • Если доставка нужна:
Стоимость доставки: 550 Q
  • Если результат функции 0:
Доставка не требуется
  • Если результат функции NaN:
Ошибка при расчете стоимости доставки

Задача № 4. Дополнительная (необязательная)

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

Общая стоимость заказа: 5855 Q.
Из них 1250 Q за гарантийное обслуживание на 1 год/года.
Гравировка на сумму 55 Q.
Доставка в область Галактика Туманность Андромеды: 550 Q.

Инструкция по выполнению домашнего задания:

  1. Зарегистрируйтесь на сайте Repl.IT.
  2. Перейдите в раздел my repls.
  3. Нажмите кнопку Start coding now!, если приступаете впервые, или New Repl, если у вас уже есть работы.
  4. В списке языков выберите JavaScript.
  5. Код пишите в левой части окна.
  6. Посмотреть результат выполнения файла можно, нажав на кнопку Run. Результат появится в правой части окна.
  7. После окончания работы нажмите кнопку Share и скопируйте ссылку из поля Share link.
  8. В личном кабинете на сайте netology.ru в поле комментария к домашней работе вставьте скопированную ссылку и отправьте работу на проверку.

Никаких файлов прикреплять не нужно.