# Include <stdio. h>
# Include <conio. h>
# Include <iostream. h>
Double CS (double F [], double X [], int N)
{
Double S = 0.0, t = 0.0;
Int I, J;
For (I = 0; I <= N; I ++)
{
T = 1.0;
For (j = 0; j <= I-1; j ++) t = T * (X [I]-X [J]);
For (j = I + 1; j <= N; j ++) t = T * (X [I]-X [J]);
T = f [I]/t;
S = S + T; if (I> N) break;
}
Return S;
} Double N (double F [], double X [], int N, Double Y)
{
Double S = f [0], t = 0.0;
Int I, J;
For (I = 1; I <= N; I ++)
{
T = 1.0;
For (j = 0; j <I; j ++) t = T * (Y-X [J]);
S = S + CS (f, x, I) * t;
}
Return S;
} Void main ()
{
Double X [3] = {11.0, 12.0, 13.0 },
F [3] = {0.190809, 0.207912, 0.224951 },
S;
Printf ("result = % F/n", n (f, x, 2, 11.5 ));
While (1)
{
Printf ("input a number (press 0 exit !) :");
Scanf ("% lf", & S );
Printf ("result = % F/n", n (f, x, 2, s ));
If (S = 0.0) break;
}
Getch ();
} Article Referenced from: