• Viernes 8 de Noviembre de 2024, 20:11

Autor Tema:  Re: operaciones para encontrar el valor de una variable  (Leído 2178 veces)

jubilubi

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
    • http://www.diversioNESjubilubi.3a2.com
Re: operaciones para encontrar el valor de una variable
« en: Viernes 31 de Octubre de 2003, 00:47 »
0
signo_b=-1;
scanf("%e,%e,%e,%e",&a,&b,&c);
x1=((-b)+res_raiz)/(2*a);
x2=((-b)-res_raiz)/(2*a);
x3=signo_b*(-1*((abs(b)+(res_raiz))/(2*a)));
x4=c/(a*x3);

printf("%e,%e,%e,%e",x1,x2,x3,x4);
getch();

no me realiza todas las operaciones y se sale del programa sin imprimir algo en pantalla.
¿por que?

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: operaciones para encontrar el valor de una variable
« Respuesta #1 en: Viernes 31 de Octubre de 2003, 02:50 »
0
de que tipos son x1,x2,x3,x4??????????

jubilubi

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
    • http://www.diversioNESjubilubi.3a2.com
Re: operaciones para encontrar el valor de una variable
« Respuesta #2 en: Viernes 31 de Octubre de 2003, 16:46 »
0
long double.
el programa se ejecuta hasta la primera operacion (x1) y a partir de ahi se sale (presionando f7 me doy cuenta de esto). Utilizo el compilador de Turbo C++ 3.0 IDE.

jubilubi

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
    • http://www.diversioNESjubilubi.3a2.com
Re: operaciones para encontrar el valor de una variable
« Respuesta #3 en: Lunes 3 de Noviembre de 2003, 03:01 »
0
¿tendra algo que ver las operaciones que se realizan?

si a x1, x2, x3 y x4 le asigno operaciones como estas:

x1=4+(5*2);
x2=x1+5;
x3=x2+3;
x4=x3+10;

entonces si las realiza y me imprime los resultados.

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: operaciones para encontrar el valor de una variable
« Respuesta #4 en: Lunes 3 de Noviembre de 2003, 04:02 »
0
de que tipo son :
signo_1
a
b
c
son enteros?
"res_raiz" es long double?
bueno para despejar todas esa dudas no se si podrias poner el codigo completo???
estoy tratando de reconstruirlo para ver si a mi me produce el error.

Y por el momento me sale este ERROR:

scanf : floating point formats no linked
abnormal program termined

y no se por que sera.

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: operaciones para encontrar el valor de una variable
« Respuesta #5 en: Lunes 3 de Noviembre de 2003, 16:33 »
0
al parecer ese error es por:

scanf("%e,%e,%e,%e",&a,&b,&c);

y deberia ser:

scanf("%e","%e","%e","%e",&a,&b,&c);

asi no da error.

jubilubi

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
    • http://www.diversioNESjubilubi.3a2.com
Re: operaciones para encontrar el valor de una variable
« Respuesta #6 en: Martes 4 de Noviembre de 2003, 02:41 »
0
Este es el codigo de mi programa:

void ecuaciones_cuadraticas()
{
   //declaracion de variables
   char letra;
   int salir;
   int signo_b=1; //signo de b
   long double a,b,c; //datos de la ecuacion: axý-bx+c=0          alt+253=ý
   long double raiz_neg=0; //bandera (si el resultado de la raiz es negativo)
   long double res_raiz; //resultado de la raiz
   long double x1,x2,x3,x4; //incognitas a encontrar
   long double raiz_cuad; //bý-4ac

   printf("Resolucion de ecuaciones cuadraticas de la forma axý + bx + c = 0");
   printf("nintroduzca el valor de a: ");
   scanf("%e",&a);
   printf("nintroduzca el valor de b: ");
   scanf("%e",&b);
   printf("nintroduzca el valor de c: ");
   scanf("%e",&c);
   if (b<0) //si b<0...
   {
      signo_b=-1; //...entonces en el signo de b es negativo
   }
   raiz_cuad=(b*b)-(4*(a*c));
   if (raiz_cuad<0) //si el resultado de bý-4ac es < 0...
   {
      raiz_cuad=abs(raiz_cuad); //valor absoluto de (b*b)-4ac
      signo_b=1; //...entonces bandera = 1 "bý-4ac es negativo"
   }
   res_raiz=sqrt(raiz_cuad);
   x1=((-b)+res_raiz)/(2*a);
   x2=((-b)-res_raiz)/(2*a);
   x3=signo_b*(-1*((abs(b)+(res_raiz))/(2*a)));
   x4=c/(a*x3);
   printf("nx1 = %e",x1);
   printf("nx2 = %e",x2);
   printf("nx3 = %e",x3);
   printf("nx4 = %e",x4);
   if (raiz_neg==1) //si bandera = 1
   {
      printf("nNOTA: el resultado de la raiz es negativo");
   }
}

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: operaciones para encontrar el valor de una variable
« Respuesta #7 en: Miércoles 5 de Noviembre de 2003, 06:05 »
0
al moento de leer a,b o c no hace una buena lectura?, pero depues trabaja bien

jubilubi

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
    • http://www.diversioNESjubilubi.3a2.com
Re: operaciones para encontrar el valor de una variable
« Respuesta #8 en: Miércoles 5 de Noviembre de 2003, 21:32 »
0
No. Lee bien las variables. El problema es al realizar las operaciones para x1, x2, x3 y x4. Solamente realiza la operacion para x1 y se sale del programa.

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
operaciones para encontrar el valor de una variable
« Respuesta #9 en: Miércoles 5 de Noviembre de 2003, 23:23 »
0
Estoy trabajando en Borlandc++ 3.11
al ingrsar valores sencillos como a=1, b=4,c=4; para verificar primero si funciona bien con valores pequeños note que arrojaba valores muy extraños(pero corria todo), despues hice correr paso paso y sucedia que no lee bien a,b y c, no se por que sucede esto pero siempre hace bien el programa osea lo corre y no se salta ni se sale hasta terminar,dime que valores asignas a : a=?,b=? y c=?