描述:
张先生有P元钱存入银行,想获得DP元钱,需要存几年?假设利率为I,税率为T。
例如:
P = 1000.00
I = 0.05
T = 0.18
DP = 1100.00
第一年 –>P = 1041.00
第二年 –>P = 1083.86
第三年 –>P= 1128.30
存入1000元,想获得1100元,张先生需要存三年时间。
MyCode:
using System;
public class Kata
{
public static int CalculateYears(double principal, double interest, double tax, double desiredPrincipal)
{
int years = 0;
while(principal < desiredPrincipal)
{
principal += principal * interest * (1 - tax);
years++;
}
return years;
}
}
CodeWar:
using System;
public class Kata
{
public static int CalculateYears(double p, double i, double t, double dp)
{
return (int) Math.Ceiling(Math.Log(dp/p, 1+(i*(1-t))));
}
}