Алгоритм кодовых войн
Проблема
У мистера Скруджа есть сумма денег «P», которую он хочет инвестировать, и он хочет знать, сколько лет «Y» эта сумма должна храниться в банке, чтобы эта сумма денег составила «D».
Mr.Scrooge 는 투자 하고자 하는 금액 'p' 를 가지고 있고, 이 금액 이 'd' 에 이르기 위해, 몇 년 동안 싶어 를 를 해야 하는지 알고 알고 싶어 한다.
Сумма хранится в течение Y лет в банке, где проценты I выплачиваются ежегодно, а новая сумма ежегодно реинвестируется после уплаты налога T.
매년 이자 ‘I’가 지급되는 은행에서는, ‘Y’년 동안 세금 ‘T’를 지불한 후, 매년 재투자된다.
Ваша задача — завершить предоставленный метод и вернуть количество лет «Y» в целом, чтобы мистер Скрудж получил желаемую сумму.
Мистер Скрудж 원하는 금액을 얻을 수 있도록 ‘Y’년을 반환해라.
Решение 01
function calculateYears(principal, interest, tax, desired) { let years = 0; while (principal < desired) { principal += principal * interest * (1 - tax); years++; } return years; } calculateYears(1000, 0.05, 0.18, 1000); // 0 calculateYears(1000, 0.05, 0.18, 1100); // 3
Решение 02
function calculateYears(principal, interest, tax, desired) { for (var years = 0; principal < desired; years++) { principal += principal * interest * (1 - tax); } return years; } calculateYears(1000, 0.05, 0.18, 1000); // 0 calculateYears(1000, 0.05, 0.18, 1100); // 3