Bueno el siguiente problema es hallar el coseno de un angulo, usando para esto interpolacion linea.
Código:
Angulo Cos
0 1
15 0.96592582
30 0.86602540
45 0.70710678
60 0.5
75 0.25881904
90 0
Primeramente debemos saber que se refieren con Interpolacion Linea:
Fuente: http://es.wikipedia.org/wiki/Interpolaci%C3%B3n_lineal
La interpolación lineal es un caso particular de la Interpolación general de Newton.
Con el polinomio de interpolación de Newton se logra aproximar un valor de la función f(x) en un valor desconocido de x. El caso particular, para que una interpolación sea lineal es en el que se utiliza un polinomio de interpolación de grado 1, y se denota de la siguiente manera:
La formula o la idea final para este caso es aplicar esta formula en nuestro caso, pero antes debemos de entender bien lo que es interpolacion lineal para poder desarrollarlo.

Código PHP:
#include
int main()
{
int angle[7] = {0, 15, 30, 45, 60, 75, 90};
double cos[7] = {1, 0.96592582, 0.86602540, 0.70710678, 0.5, 0.25881904, 0};
int angulo;
int z;
printf("Ingrese el Angulo entre estos valores: \n");
for(z=0;z<7;z++)
printf("%d ",angle[z]);
printf("\nAngulo: ");
scanf("%d",&angulo);
int i,j;
int AnMax=0,AnMin=0;
for(i=0;i<7;i++)
{
if(angulo<angle[i])
{
AnMax = angle[i];
break;
}
}
for(j=7;j>-1;j--)
{
if(angulo>angle[j])
{
AnMin = angle[j];
break;
}
}
printf("El Angulo esta entre: %d > %d > %d\n",AnMax,angulo,AnMin);
double cosangulo;
cosangulo = (angulo - AnMin)/(AnMax - AnMin);
cosangulo = cosangulo*(cos[i] - cos[j]);
cosangulo = cosangulo + cos[j];
printf("El coseno de %d es: %10.8lf",angulo,cosangulo);
return 0;
}
0 comentarios:
Publicar un comentario