Давайте попробуем упростить вашу задачу по расчету ставки. Мы создадим одну основную функцию, которая будет обрабатывать ввод пользователя, проверять наличие комиссии и таможенных сборов, а затем выводить конечную ставку в японских йенах. Я также добавлю некоторые улучшения и комментарии к коду, чтобы вам было легче понять его структуру.
Предположим, что у вас есть некоторые константы для обменного курса и правил расчета таможенного сбора. Разделим код на логические блоки:
1. Конвертация рублей в йены.
2. Расчет комиссии.
3. Расчет таможенного сбора.
4. Подсчет окончательной ставки.
Вот пример, как это можно реализовать:
```javascript
const exchangeRate = 1.5; // примерный курс 1 рубль = 1.5 иены
// Функция для проверки наличия комиссии
function checkCommission(total) {
if (total < 1000000) {
return 0;
} else if (total >= 1000000 && total < 2000000) {
return 20000;
} else if (total >= 2000000 && total < 3000000) {
return 30000;
} else if (total >= 3000000 && total < 4000000) {
return 50000;
} else if (total >= 4000000 && total < 5000000) {
return 90000;
} else if (total >= 5000000) {
return total * 0.10; // 10% от суммы свыше 5000000
}
}
// Функция для расчета таможенного сбора
function checkCustomsFee(jpCost) {
if (jpCost <= 300000) {
return 0;
} else {
return jpCost * 0.05; // например, 5% от суммы свыше 300000
}
}
// Основная функция
function calculateBid(rubAmount) {
// 1. Конвертируем рубли в японские иены
let jpBid = rubAmount * exchangeRate;
// 2. Проверяем наличие комиссии
let commission = checkCommission(jpBid);
// 3. Подсчитываем итоговую сумму с учетом комиссии
jpBid += commission;
// 4. Проверяем наличие таможенного сбора
let customsFee = checkCustomsFee(jpBid);
// 5. Подсчитываем окончательную ставку
let finalBid = jpBid + customsFee;
// Возвращаем результат
return {
jpBid: jpBid,
commission: commission,
customsFee: customsFee,
finalBid: finalBid
};
}
// Пример использования
let rubAmount = 1500000; // Вводим сумму в рублях
let result = calculateBid(rubAmount);
console.log(result);
```
### Пояснения к коду:
- `exchangeRate`: здесь можно установить актуальный обменный курс.
- Функции `checkCommission` и `checkCustomsFee` рассчитывают комиссии и таможенные сборы в зависимости от суммы.
- Функция `calculateBid` выполняет основные шаги: конвертирует рубли, проверяет комиссии и таможенные сборы, а затем возвращает все расчетные значения в объекте.
### Вывод
Запустив эту функцию с определенной суммой в рублях, вы получите информацию о ставке в йенах, сумме комиссии, таможенном сборе и конечной ставке. Надеюсь, это поможет вам разобраться с задачей и избежать дальнейших переживаний! Если есть дополнительные вопросы, не стесняйтесь задавать их!