Buenas amigos.... hice un codigo pero me dice que de dejo de funcionar y no encuentro el error... si me podrian ayudar por favor....
Código (c) [Seleccionar]
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<windows.h>
main()
{
int n,i=0,x[n],el[n],conf=0,nf,l=0,j=0,f=3;
float arre[10][7],e,sum1=0,sum2=0,sum3=0,vp,va;
printf("A:");
scanf("%f",&arre[0][0]);
printf("B:");
scanf("%f",&arre[0][1]);
printf("Tama%co de la funcion:",164);
scanf("%d",&n);
while(conf==0)//confirma los datos
{
while(n>i)//pide x y elevaciones
{
printf("X:");
scanf("%d",&x[i]);
printf("Elevado a la:");
scanf("%d",&el[i]);
i++;
}
printf("Desea agregar un numero al final de la ecuacion?\n1=si/0=no:");
scanf("%d",&conf);
if(conf==1)
{
printf("Numero final:");
scanf("%d",&nf);
}
i=0;
while(n>i)
{
printf("%dX%d ",x[i],el[i]);
i++;
}
if(conf==1)
printf("%d",nf);
i=0;
printf("\n0 para ingresar nuevamente los datos/1 para continuar:");//confirma los datos
scanf("%d",&conf);
system("cls");
}
while(conf==1)
{
arre[l][2]=(arre[l][0]+arre[l][1])/2;
printf("C:%.4f",arre[l][2]);
while(i<n)
{
sum1=pow(arre[l][0],el[i]);
sum1=sum1*x[i];
arre[l][3]=arre[l][3]+sum1;
sum2=pow(arre[l][1],el[i]);
sum2=sum2*x[i];
arre[l][4]=arre[l][4]+sum2;
sum3=pow(arre[l][2],el[i]);
sum3=sum3*x[i];
arre[l][5]=arre[l][5]+sum3;
i++;
}
arre[l][3]=arre[l][3]+nf;
arre[l][4]=arre[l][4]+nf;
arre[l][5]=arre[l][5]+nf;
i=0;
if(arre[l][3]<0 && arre[l][4]<0 || arre[l][3]>0 && arre[l][4]>0)
{
printf("Los valores ingresados no contienen una raiz");
conf=0;
}
else
{
if(arre[l][3]<0 && arre[l][5]<0 || arre[l][3]>0 && arre[l][5]>0)//si a y c son iguales
{
arre[l+1][0]=arre[l][2];
arre[l+1][1]=arre[l][1];
}
if(arre[l][4]<0 && arre[l][5]<0 || arre[l][4]>0 && arre[l][5]>0)//si a y b son iguales
{
arre[l+1][1]=arre[l][2];
arre[l+1][0]=arre[l][0];
}
}
printf("%d",l);
if(l>0)
{
vp=arre[l-1][2];
va=arre[l][2];
e=(vp-va)/va;
}
l++;
if(e==0.00001 || e==-0.00001)
conf=0;
}
getch();
}