Есть следующая прога, которая принимает на вход строку в формате "начальная сумма проценты по вкладу срок(мес)" и возвращает итоговую сумму, причём по заданию надо написать программку
без использования циклов :
public static double Calculate(string userInput) {
double initalAmmount = (double)Convert.ToDouble(userInput.Remove(userInput.IndexOf(' ')));
userInput = userInput.Remove(0, userInput.IndexOf(' ') + 1);
double percents = (double)((Convert.ToDouble(userInput.Remove(userInput.IndexOf(' ')))));
userInput = userInput.Remove(0, userInput.IndexOf(' ') + 1);
double mounthes = (double)Convert.ToDouble(userInput);
return initalAmmount * (1 + mounthes * (percents / (12 * 100)));
}
Однако по каким то причинам она не работает, возвращая жуткие непонятные данные вроде этих:
Error on userInput [100 12 2] expected 102.01 but was 102
Error on userInput [1000 24 3] expected 1061.208 but was 1060
Error on userInput [1749.67 55.74 42] expected 11779.6504403219 but was 5163.101203
Error on userInput [8759.7 85.58 42] expected 158139.153610356 but was 34997.62941
Error on userInput [5920.75 65.4 25] expected 22312.1450988176 but was 13987.771875
Вопрос: что может быть не так? Есть ли ещё какие нибудь формулы для нахождения суммы, которая будет иметь место по окончанию срока вклада?