Пояснення Рішення | Мінімальний Платіж для Кредитної Карти за допомогою Бінарного пошуку
2. Katas
Щоб побачити повну версію Пояснення завітайте на GitHub. Дивіться нижче↓
Рішення:
- Створюємо функцію, яка приймає дві змінні.
-
Переходимо до частини допоміжних змінних:
- start_balance - для дублювання непогашеного залишок, пізніше це нам стане в нагоді.
- monthlyPercentRate - щомісячна процентна ставка.
- lowerPay - нижня межа платежу.
- upperPay - верхня межа платежу.
- epsilon - змінна для порівняння.
- count - кількість спроб за які програма знайшла мінімальний платіж.
-
Переходимо до основної частини програми:
- Будемо використовувати цикл while, тому що не знаємо скільки спроб нам знадобиться.
-
Допоміжних змінних в самому циклі:
- minPay - мінімальний платіж на даний момент.
- OutStandingBalance - початковий непогашений залишок.
- count - додаємо 1 до кількості спроб.
- Застосовуємо алгоритм, який ми розібрали в Прикладі.
-
Перевіряємо непогашений залишок після одного року:
- Якщо він більше epsilon, то тоді ми міняємо нижню межу на minPay і повертаємося до 3 пункту.
- Якщо він менше epsilon, то тоді ми міняємо верхню межу на minPay і повертаємося до 3 пункту.
- В іншому випадки, виходимо з циклу
- Округлюємо minPay до другої цифри після коми і повертаємо рядок за умовою
На цьому і все.
Якщо вам сподобалася Katas, можете поставити цій репозиторії зірочку це буде мене в подальшому мотивувати на написання подібних Katas для вас
Переходьте на Github строрінку :