Здравствуйте, дана задача:
Человек положил в банк сумму в s рублей под p% годовых (проценты начисляются в конце года).
Сколько денег будет на счету через 3 года (с учётом сложных процентов)?
Например, 100 рублей под 10% годовых превратятся в 133.1 рубля
Дано начало функции fun accountInThreeYears(initial: Int, percent: Int): Double = TODO ()
Путем недолгих поисков узнаем, что формула по которой можно провести вычисления выглядит как:
100 * (1 + 10/100)^3 = 133.1
Где 100 это сумма вклада, а 3 это время в годах на которое помещается вклад.
В Котлин для возведения числа в степень используют следующую функцию:
x.pow(y) = x^y или х в степени у
По такой логике функция решающая поставленную задачу должна выглядеть как:
((1 + (percent/100)).pow(3)) * initial, но при такой записи, IntelliJ IDEA ругается что возведение в степень написано не верно.
Итак, сам вопрос: Как должно выглядеть возведение в степень (1 + (percent/100)) и можно ли это сделать без ввода дополнительных переменных и разбивок функции на несколько вычислений?
Импортируйте библиотеку: import kotlin.math.pow
Используйте вызов вида: x.pow(степень)
Pow работает с типами Float, Double.
Пример: x.toFloat().pow(3).toInt()