Software Engineering">
Nothing Special   »   [go: up one dir, main page]

Practica 4b - Equipo-C.

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

CODIGO EN C++.

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

float M[10][4];
float E[10][10];
float ve[4]={0,0,0,0};
int m,n;
int i,j,k;
int cl,ln;
float bufer1, bufer2;
float suma_xi, suma_yi, suma_xi2;
float suma_xi3, suma_xi4, suma_xiyi;
float suma_xi2yi;
int ind=0;
float piv=0.0, cero=0.0;

main()
{
textcolor(9);
printf("\t\t\t\t\t\t\t\t\tINSTITUTO POLITECNICO NACIONAL.");
printf("\n\t\t\t\t\t\t\t\t\t\tESIME - AZCAPOTZALCO.");
printf("\n\t\t\t\t\t\t\t\t_________________________________________________");
printf("\n\n\n\n\t\t\t\t\t\t\tLABORATORIO DE METODOS NUMERICOS - PROF:
DAVID DOMINGUEZ Z.");
printf("\n\n\n\t\t\t\t\t\t\t\t\t\tEQUIPO -C-.");
printf("\n\n\n\t\t\t\t\t\t\t\tALUMNOS:-GUDINO VEGA FERNANDO GAEL - NL 7 -
."); // GUDIÑO VEGA FERNANDO GAEL.
printf("\n\n\t\t\t\t\t\t\t\t\t-GULLEN ORTEGA BRANDON - NL 8 -.");
printf("\n\n\t\t\t\t\t\t\t\t\t-HERNANDEZ CUENCA JORGE ENRIQUE - NL 9 -.");

printf("\n\n\t\t\t\t\t\t_______________________________________________________
_________________________");
printf("\n\n\t\t\t\t\t\t\tPRACTICA 04b: METODO DE MINIMOS CUADRADOS
POLINOMIALES DE SEGUNDO ORDEN.");

getch();
system("cls");
///////// empieza el programa.
suma_xi=suma_yi=suma_xi2=suma_xi3=suma_xi4=0.0;
suma_xiyi=suma_xi2yi=0.0;
bufer1=bufer2=0.0;
cl=ln=0;
i=j=n=m=0;
for (i=0;i<10;i++)
{
for (j=0;j<4;j++)
{
M[i][j]=0.0;
}
}
for (i=0;i<10;i++)
{
for (j=0;j<10;j++)
{
E[i][j]=0.0;
}
}

textcolor(5);
clrscr();
gotoxy(10,1), cprintf("Numero de puntos a aproximar:");
scanf("%d",&n);
cl=1;
for(i=1;i<=n;i++)
{
ln=2;cl=cl+10;
gotoxy(cl,ln),cprintf("x%d=",i);scanf("%f",&M[i][1]);
ln=3;
gotoxy(cl,ln),cprintf("y%d=",i);scanf("%f",&M[i][2]);
}
m=2;
for (i=1;i<=n;i++)
{
suma_xi=suma_xi+M[i][1];
suma_yi=suma_yi+M[i][2];
suma_xi2=suma_xi2+pow(M[i][1],2);
suma_xi3=suma_xi3+pow(M[i][1],3);
suma_xi4=suma_xi4+pow(M[i][1],4);
suma_xiyi=suma_xiyi+(M[i][1]*M[i][2]);
suma_xi2yi=suma_xi2yi+(pow(M[i][1],2)*M[i][2]);
}
printf("\n n =%d",n);
printf("\n");
printf("m =%d",m);
printf("\n");
printf("suma_xi= %f",suma_xi);
printf("\n");
printf("suma_yi= %f",suma_yi);
printf("\n");
printf("suma_xi2= %f",suma_xi2);
printf("\n");
printf("suma_xi3= %f",suma_xi3);
printf("\n");
printf("suma_xi4= %f",suma_xi4);
printf("\n");
printf("suma_xiyi= %f",suma_xiyi);
printf("\n");
printf("suma_xi2yi= %f",suma_xi2yi);
printf("\n");
printf("presione <ENTER> para continuar.");
getch();
printf("\n\n");
printf("Sust. Resultados se obtiene el sistemade ecuaciones:\n");
E[1][1]=n; E[1][2]=suma_xi; E[1][3]=suma_xi2; E[1][4]=suma_yi;
E[2][1]=suma_xi; E[2][2]=suma_xi2; E[2][3]=suma_xi3; E[2][4]=suma_xiyi;
E[3][1]=suma_xi2; E[3][2]=suma_xi3; E[3][3]=suma_xi4;
E[3][4]=suma_xi2yi;
ln=18;
for (i=1;i<4;i++)
{
ind=0;cl=1;ln=ln+1;
for (j=1;j<4;j++)
{
gotoxy(cl,ln),printf("%.4f",E[i][j]);
cl=cl+8;
gotoxy(cl,ln),printf("a%d",ind);
ind=ind+1;
cl=cl=6;
if(j==3)
{
cprintf(" = ");
cprintf("%f",E[i][4]);
}
}
printf("\n");
}

for (i=1;i<=3;i++)
{
piv=E[i][i];
for (j=1;j<=4;j++)
{
E[i][j]=E[i][j]/piv;
}
for(k=1;k<=3;k++)
{
if ( k !=i)
{
cero=E[k][i];
for (j=i;j<=4;j++)
{
E[k][j]=E[k][j]-cero*E[i][j];
}
}
}
}
printf("\n");
for(i=1;i<=3;i++)
{
ve[i]=E[i][4];
}
printf("\n");
printf("La ec. cuadratica es: y= %f + %fx + %fx^2", ve[1],ve[2],ve[3]);
getch();
system("cls");

textcolor();
printf("\n\n\n\t\t\t\t\t\t\t\t\t\tCONCLUSIONES.");
printf("\n\n\n\t\t\t\t\t\t\t\t\t\tEQUIPO -C-.");
printf("\n\n\t\t\t\t\t\t\t\t\tPRACTICA 04b: METODO DE MINIMOS CUADRADOS
POLINOMIALES DE SEGUNDO ORDEN.");

printf("\n__________________________________________________________________
_________________________________________________________________________
_____________________________");
printf("\n Este metodo al estar basado en el ajuste de minimos cuadraticos
lineales, por lo cual en este preocedimiento se obtubieron las derivadas de cada uno de\n
los coeficientes. Tomando en cuenta que es un polinomio de segundo orden se obtiene un
sistema de ecuaciones en este caso de tres.\n Al resolver las ecuaciones se obtienen \n los
resultados mostrados en la pantalla.");
}

PANTALLA DE RESULTADOS.

También podría gustarte