using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.ReadLine();
DateTime dt = DateTime.Now;
string str = "-83715.57,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,4951.54,2513.47,2513.47,2513.47,2513.47,2513.47,2513.47,2513.47,2513.47,2513.47,2513.47,2513.47,2513.35";
List<Model> list = new List<Model>();
int i = 0;
foreach (var item in str.Split(','))
{
list.Add(new Model { id = i, value = Convert.ToDouble(item) });
i++;
}
double guess = 0.0000001;
double npv = list.Sum(x => x.value / Math.Pow(1 + guess, x.id));
while (npv > 0)
{
guess += 0.00000001;
npv = list.Sum(x => x.value / Math.Pow(1 + guess, x.id));
}
Console.WriteLine((DateTime.Now - dt).TotalSeconds);
Console.WriteLine(guess * 12);
Console.ReadLine();
}
}
public class Model
{
public double id { get; set; }
public double value { get; set; }
}
}