elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  NeuN textbox de respuesta// formula cuadratica
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: NeuN textbox de respuesta// formula cuadratica  (Leído 1,756 veces)
fcpena

Desconectado Desconectado

Mensajes: 1


Ver Perfil
NeuN textbox de respuesta// formula cuadratica
« en: 16 Abril 2016, 23:49 pm »

Hola!! al parecer hay un error en mi codigo y no se cual es. trato de calcular formula cuadratica y al apachar mi boton de calcular en los textbox de respuesta aparece NeuN alguien que me ayude con esto porfavor. :P :P


       Double a, b, c, x, x1;
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
   a = Convert::ToDouble(textBox1->Text);
   b = Convert::ToDouble(textBox2->Text);
   c = Convert::ToDouble(textBox3->Text);
   x= -b + sqrt(b*b-4*a*c)/2*a;
   x1= -b - sqrt(b*b - 4 * a*c) / 2 * a;
   textBox4->Text = Convert::ToString(x);
   textBox5->Text = Convert::ToString(x1);


En línea

HardForo

Desconectado Desconectado

Mensajes: 219


HardForo.com


Ver Perfil WWW
Re: NeuN textbox de respuesta// formula cuadratica
« Respuesta #1 en: 17 Abril 2016, 00:33 am »

Si a =0 tendras division por cero y un NaN ("not a number")

Digamos el caso de  5x -7  (no hay un X^2 en tu ecuacion) lo puedes despejar directamente:

5x - 7 = 0
5x = 7
x =  7/5 

O sea...  x = -c / b   (unica solucion)


« Última modificación: 17 Abril 2016, 00:34 am por boctulus » En línea

HardForo:  foro de Hardware y programación

Se buscan Mods y colaboradores *
ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: NeuN textbox de respuesta// formula cuadratica
« Respuesta #2 en: 17 Abril 2016, 00:55 am »

Esa operación está mal planteada. Tienes que poner paréntesis.
Actualmente tienes esto:
Código:
-b +        (   (sqrt(b*b-4*a*c) / 2)    *a)

Y quieres lograr esto:
Código:
(-b + sqrt(b*b-4*a*c) ) / (2*a)

Ahora hay 2 problemas: no hay raiz cuadrada de números negativos, que ha de ser el problema que tenías, y no se divide entre 0.

Así que:
-Si a y b son 0, error.
-Si a es 0 y b no, como dijo boctulus: -c/b
-Si b es 0 y a no: sqrt(-c/a), comprobando que -c/a sea positivo o cero.
-Si a y b son distintos de 0, la fórmula, salvo que b*b-4*a*c sea negativo, en tal caso error.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines