C#

C# Помогите сделать корректный вывод

Необходимо корретно сосчитать расходы за 10 месяцев, при этом нужно, чтобы каждый месяц (цикл) расходы увеличивались на 3%.
Что нужно поправить:
1. Заменить строку
double costForTenMounth = 1;
на
double costForTenMounth = 0;
так как туда будет суммировать стоимость общую
2. Заменить строку
costForTenMounth = costForTenMounth * cost;
на
costForTenMounth += cost;
это равносильно записи :costForTenMounth =costForTenMounth + cost;
так как в cost по вашему коду храниться размер расходов на текущий месяц в цикле и вам нужно его прибавить к сумме расходов накопленной за предыдущие месяцы и сделать так 10 раз, за что отвечает цикл ваш от 1 до 10.
3. Заменить строку
for (int i = 1; i<10; i++) // - даст 9 итераций
на
for (int i = 1; i<=10; i++) // - даст 10 итераций
или на
for (int i = 0; i<10; i++) // - даст 10 итераций
т. к. это даст вам 10 итераций,
(Второй вариант оставить объявление цикла как есть, но тогда double costForTenMounth = cost; // и нужно следить, чтобы до этой инициализации в cost была верное значение - величина расходов первого месяца И в теле цикла строку cost = cost * 1.03; поставить перед суммированием, а после суммирования убрать)
Мурад Абдуллин
Мурад Абдуллин
5 910
Лучший ответ
А с выводом тут все хорошо, тут расчеты хреновые.
Замени весь свой ужас с циклами единственной строчкой:

double costForTenMounth = cost * Enumerable.Range(0, 9).Select(x => Math.Pow(1.03, x)).Sum();
Евгений Dj
Евгений Dj
59 153
Невозможно
Лёха Дфнилов
Лёха Дфнилов
4 220