Powered By Blogger

martes, 11 de diciembre de 2012

Programa que realiza diferencias divididas para determinar el valor de una funcion conocida en base al valor de la funcion evaluada en puntos equidistantes por medio de "INTERPOLACION LINEAL DE NEWTON"


//Torres Martinez Gustavo Alan
//Grupo:4CM1
//Programa que realiza diferencias divididas para determinar el valor de
//de una funcion conocida en base al valor de la funcion evaluada en puntos
//equidistantes por medio de "INTERPOLACION LINEAL DE NEWTON"

#include<stdio.h>
#include<conio.h>
#include<dos.h>
#include<math.h>
#include<stdlib.h>
#include<iostream.h>

void main(void)
{
double f1x,fx,fx0,fx1,f1xa,f1xb,x,x0,x1,erv,era;
clrscr();
x=2;
x0=1;
x1=5;
fx=log(x);
fx0=log(x0);
fx1=log(x1);
cout<<"Calculando el ln(2) por medio del polinomio de interpolacion lineal"<<endl<<"de Newton con: A) ln(1) y ln(5); B) ln(1) y ln(3)."<<endl<<endl;
f1xa=fx0+((fx1-fx0)/(x1-x0))*(x-x0);
erv=(fx-f1xa)/fx*100;
printf("A) f1(x)=%1.8f  Erv=%2.2f  Era=100\n\n",f1xa,fabs(erv));
x1=3;
fx1=log(x1);
f1xb=fx0+((fx1-fx0)/(x1-x0))*(x-x0);
erv=(fx-f1xb)/fx*100;
era=(f1xb-f1xa)/f1xb*100;
printf("B) f1(x)=%1.8f  Erv=%2.2f  Era=%2.2f\n\n",f1xb,fabs(erv),fabs(era));
cout<<endl<<endl;
textcolor(10+128);
cprintf("             Presiona cualquier tecla....");
getch();
}

No hay comentarios:

Publicar un comentario