Пример #1
0
        static void Main(string[] args)
        {
            ValidateArguments(args);

            var parameters = new LoanParameters
            {
                LoanAmount   = Decimal.Parse(args[0]),
                Term         = Int32.Parse(args[1]),
                InterestRate = Decimal.Parse(args[2]),
                PayDay       = Int32.Parse(args[3])
            };

            var calculator = new PaymentCalculator(parameters);
            var graph      = calculator.GetPaymentGraph();
            var i          = 1;

            Console.WriteLine("Įmokos Nr.\t | Data\t\t |  Likutis prieš įmoką\t | Kredito dalis\t | Palūkanos\t | Įmoka\t | Likutis po įmokos");
            foreach (var g in graph.PaymentEntries)
            {
                var str = $"{i}\t\t | {g.Date.ToString("yyyy-MM-dd")}\t | {g.RemainderBeforePayment:0.00}\t\t | {g.CreditPart:0.00}\t\t |" +
                          $" {g.InterestPart:0.00}\t | {g.Payment:0.00}\t | {g.RemainderAfterPayment:0.00}";

                Console.WriteLine(str);
                i++;
            }

            //PrintTotals(graph);
            var bv = new BVKKMNCalculator(parameters.Term, graph.PaymentEntries.FirstOrDefault().Payment, parameters.LoanAmount).Calculate() * 100;

            Console.WriteLine($"BVKKMN - {bv:0.00}");
        }