Search:

Submit Article

# NEWTON'S BACKWARD DIFFERENCE METHOD

Posted By: Logan Bouchard     Category: C Programming     Views: 11699

## Code for NEWTON'S BACKWARD DIFFERENCE METHOD in C Programming

```#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
float x[10],y[10][10],sum,p,u,temp;
int i,n,j,k=0,f,m;
float fact(int);
clrscr();
printf("\nhow many record you will be enter: ");
scanf("%d",&n);
for(i=0; i<n; i++)
{
printf("\n\nenter the value of x%d: ",i);
scanf("%f",&x[i]);
printf("\n\nenter the value of f(x%d): ",i);
scanf("%f",&y[k][i]);
}
printf("\n\nEnter X for finding f(x): ");
scanf("%f",&p);

for(i=1;i<n;i++)
{
for(j=i;j<n;j++)
{
y[i][j]=y[i-1][j]-y[i-1][j-1];
}
}
printf("\n_____________________________________________________\n");
printf("\n  x(i)\t   y(i)\t    y1(i)    y2(i)    y3(i)    y4(i)");
printf("\n_____________________________________________________\n");
for(i=0;i<n;i++)
{
printf("\n %.3f",x[i]);
for(j=0;j<=i;j++)
{
printf("   ");
printf(" %.3f",y[j][i]);
}
printf("\n");
}

i=0;
do
{
if(x[i]<p && p<x[i+1])
k=1;
else
i++;
}while(k != 1);
f=i+1;
u=(p-x[f])/(x[f]-x[f-1]);
printf("\n\n u = %.3f ",u);

n=n-i+1;
sum=0;
for(i=0;i<n;i++)
{
temp=1;
for(j=0;j<i;j++)
{
temp = temp * (u + j);
}
m=fact(i);
sum = sum + temp*(y[i][f]/m);
}
printf("\n\n f(%.2f) = %f ",p,sum);
getch();
}

float fact(int a)
{
float fac = 1;

if (a == 0)
return (1);
else
fac = a * fact(a-1);

return(fac);
}

/*______________________________________         OUT PUT______________________________________how many record you will be enter: 5enter the value of x0: 2.5enter the value of f(x0): 9.75enter the value of x1: 3enter the value of f(x1): 12.45enter the value of x2: 3.5enter the value of f(x2): 15.70enter the value of x3: 4enter the value of f(x3): 19.52enter the value of x4: 4.5enter the value of f(x4): 23.75Enter X for finding f(x): 4.25_____________________________________________________  x(i)     y(i)     y1(i)    y2(i)    y3(i)    y4(i)_____________________________________________________ 2.500    9.750 3.000    12.450    2.700 3.500    15.700    3.250    0.550 4.000    19.520    3.820    0.570    0.020 4.500    23.750    4.230    0.410    -0.160    -0.180 u = -0.500 f(4.25) = 21.583750*/```
Share:

Didn't find what you were looking for? Find more on NEWTON'S BACKWARD DIFFERENCE METHOD Or get search suggestion and latest updates.

 Logan Bouchard author of NEWTON'S BACKWARD DIFFERENCE METHOD is from Montreal, Canada. View All Articles

 Please enter your CommentComment should be atleast 30 Characters.Please put code inside [Code] your code [/Code]. No Comment Found, Be the First to post comment!