Moin,
double y1 = 1234.887; double y2 = 2453.778; DateTime x1 = Convert.ToDateTime("2015-01-01 00:15:00.000"); DateTime x2 = Convert.ToDateTime("2015-01-01 00:30:00.000"); DateTime x = Convert.ToDateTime("2015-01-01 00:16:00.000"); for (int i = 1; i < 15; i++) { double zaehler = (y2 - y1) * (x - x1).TotalSeconds; double nenner = (x2 - x1).TotalSeconds; double result = (zaehler / nenner) + y1; y1 = result; x1 = x.AddMinutes(1); }
Sieht ihr da irgendwelche Fehler.
Die Variable x wird nicht neu gesetzt, glaube das wurde hier schon erwähnt. Aus
y1 = result;
x1 = x.AddMinutes(1);
sollte ein
y1 = result;
x1 = x;
x = x.AddMinutes(1);
werden, sofern du das wirklich so umsetzen möchtest. Um alle Datenpunkte zu erfassen habe ich mal folgenden Schnipsel verfasst.
List<double> results = new List<double>();
double y1 = 1234.887;
double y2 = 2453.778;
DateTime x1 = Convert.ToDateTime("2015-01-01 00:15:00.000");
DateTime x2 = Convert.ToDateTime("2015-01-01 00:30:00.000");
DateTime x = x1;
while (x <= x2)
{
double y = y1 + (x - x1).TotalSeconds * (y2 - y1) / (x2 - x1).TotalSeconds;
results.Add(y);
x = x.AddMinutes(1);
}
hth bernd