hdacollection
@hdacollection
Обучаюсь - Графический дизайнер | Web-разработчик

Сумма — % или Сумма + % = Число. Как правильно записать?

Как получить число из (Сумма +- %) если:
let name = 10%; - ошибочная запись.
сonsole.log(`Процент от покупки: ${Balance + 10%}`) - ошибочная запись.

Задача:
__________________________________________________________________________________
Мы решили изменить бонусную систему. Теперь покупатель получает бонусные баллы в зависимости от размера покупки и того, как часто он покупает. Обычно мы начисляем 10% от суммы покупки на бонусный счет, но если у клиента на счету больше 5000 бонусных баллов, то мы начисляем 20% от суммы. Дополнительно мы добавляем 5% к начислению, если это не первая покупка в этом месяце.
Реализуйте эту схему расчета бонусных баллов.

Процесс реализации:
1. Создайте переменные для хранения:
- бонусного баланса;
- суммы заказа;
- количества покупок в этом месяце;
- стандартного размера начисления в процентах;
- повышенного размера начисления в процентах;
- добавки за частые покупки в процентах.
2. Инициализируйте переменные тестовыми значениями. Например, пользователь покупает на 3000₽, на его балансе — 500 баллов, это его вторая покупка в этом месяце (в этом случае мы должны начислять 15% от суммы заказа).
3. Создайте дополнительную переменную для хранения итогового процента. Запишите в нее применяемый размер начисления в процентах.
4. Проверьте, не нужно ли добавить бонус за частые покупки.
5. Выведите на печать размер бонуса в % за покупку: Процент от покупки: Y.
  • Вопрос задан
  • 623 просмотра
Решения вопроса 1
hdacollection
@hdacollection Автор вопроса
Обучаюсь - Графический дизайнер | Web-разработчик
let bonusBalance = 5000; // Бонусный баланс
let orderPrice = 500; // Сумма заказа
let numberPurchases = 1; // Количество покупок

let bonus1 = (orderPrice / 100) * 10;
let bonus2 = (orderPrice / 100) * 15;
let bonus3 = (orderPrice / 100) * 20;
let bonus4 = (orderPrice / 100) * 25;

if (bonusBalance <= 5000 && numberPurchases === 1) { // + 10% = 50
console.log(`Процент от покупки: ${bonus1}`);
} else if (bonusBalance <= 5000 && numberPurchases > 1) { // + 15% = 75
console.log(`Процент от покупки: ${bonus2}`);
} else if (bonusBalance >= 5000 && numberPurchases === 1) { // + 20% = 100
console.log(`Процент от покупки: ${bonus3}`);
} else if (bonusBalance >= 5000 && numberPurchases > 1) { // + 25% = 125
console.log(`Процент от покупки: ${bonus4}`);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@altkov
Наймите фрилансера. Вы не сможете все это разработать.
Ответ написан
@getaxe
JS developer
Проценты, друг мой, нельзя вычитать. Проценты должны быть от какого то числа.
Проценты являются дробным числом, тем самым 100% = 1, а 10% = 0.1; Но это в математике.
% в javascript же обозначает остаток от деления, например:
console.log(1234 % 10); //вернет 4, т.к. при делении на 10, 4 будет остатком. Опять же математика.

В вашем же случае можно написать:
var Balance = 100;
сonsole.log(`Процент от покупки: ${Balance * 0.1}`) // Это и будет 10%
Ответ написан
Комментировать
Как правильно записать?

const value = 100;
const tenPercents = 10 / 100;
const tenPercentsFromValue = tenPercents * value;
const valuePlusTenPercents = tenPercentsFromValue + value;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы