Расчет накопившейся суммы на момент окончания вклада - C#
Формулировка задачи:
Напишите программу, которая после ввода суммы, процентной ставки и срока вклада рассчитывает накопившуюся сумму на момент окончания вклада.
Детали:
В конце каждого месяца происходит "капитализация" — к сумме прибавляется накопившийся за месяц процент. Далее процент вычисляется от этой увеличенной суммы.
Процентная ставка — годовая (то есть в конце месяца сумма на счете увеличивается на одну двенадцатую ставки)
Считайте, что вклад открыт в первый день месяца, а срок вклада — это целое количество месяцев.
Решение задачи: «Расчет накопившейся суммы на момент окончания вклада»
textual
Листинг программы
class TDeposit
{
decimal summ;
double rate;
int period;
public TDeposit ()
{
summ = 0;
rate = 0;
period = 0;
}
public TDeposit (decimal summ, double rate, int period)
{
this.summ = summ;
this.rate = rate;
this.period = period;
}
public decimal FinalyDeposit()
{
if (rate == 0) return 0;
double temp_rate = rate / 12;
decimal temp_summ = summ;
for (int months = 1; months<=period; months++)
{
temp_summ += temp_summ / 100 * (decimal)temp_rate;
}
return temp_summ;
}
}
class Program
{
static void Main(string[] args)
{
decimal startDeposit, finishDeposit;
double rate;
int period;
Console.Write("Введите сумму вклада: ");
startDeposit = Decimal.Parse(Console.ReadLine());
Console.Write("Введите ставку % годовых: ");
rate = Double.Parse(Console.ReadLine());
Console.Write("Введите срок вклада: ");
period = int.Parse(Console.ReadLine());
TDeposit deposit = new TDeposit(startDeposit, rate, period);
finishDeposit = deposit.FinalyDeposit();
Console.WriteLine("\n\nК выдаче по истечении срока вклада: {0}", Decimal.Round(finishDeposit, 2));
Console.ReadLine();
}
}