Autor
|
Tema: Ayuda con un simple programa en c# (Leído 12,010 veces)
|
Amagekure
Desconectado
Mensajes: 63
la noche es mas oscura cuando va a amanecer
|
double x1, x2,bn; int a = Convert.ToInt16(textBox1.Text); int b = Convert.ToInt16(textBox2.Text); int c = Convert.ToInt16(textBox3.Text);
bn = b * -1; x1 = (bn + Math.Sqrt(b^2 - 4 * a * c)) / (2 * a); x2 = (bn - Math.Sqrt(b^2 - 4 * a * c)) / (2 * a);
textBox4.Text = x1.ToString(); textBox5.Text = x2.ToString();
pues necesito que me digan que esta mal aqui, pues intento que me diga las raizes realies de una ecuacion de 2 grado A,B,C son los 3 numeros que corresponden a la escuasion pero cuando le aplico la formula el resultado es un texto 'NeuN' y no los resultados numericos que estoy buscando, alguien sabio que me diga que error estoy cometiendo en este programa
|
|
|
En línea
|
|
|
|
Shell Root
|
Te sale NeuN, porque le estas sacando Sqrt a un valor negativo, por ejemplo. MsgBox(Math.Sqrt(0 - 4))
Intentadlo así: Dim x1, x2, bn As Double Dim a, b, c As Integer a = 1 b = 6 c = 1 bn = b * -1 x1 = (bn + Math.Sqrt(b ^ 2 - 4 * a * c)) / (2 *a) x2 = (bn - Math.Sqrt(b ^ 2 - 4 * a * c)) / (2 * a) MsgBox(x1) MsgBox(x2)
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
raul338
Desconectado
Mensajes: 2.633
La sonrisa es la mejor forma de afrontar las cosas
|
Seria mejor asi: Dim x1, x2, bn As Double Dim a, b, c As Integer a = 1 b = 6 c = 1 bn = b * -1 Dim radicando As Double = Math.Pow(b, 2) - 4 * a * c If radicando = 0 Then x1 = (bn) / (2 *a) MsgBox(x1 & " y es raiz doble") ElseIf radicando > 0 Then x1 = (bn + Math.Sqrt(radicando)) / (2 *a) x2 = (bn - Math.Sqrt(radicando)) / (2 * a) MsgBox(x1) MsgBox(x2) Else Msgbox ("La ecuacion no tiene racies reales") End If
|
|
|
En línea
|
|
|
|
AckeR
Desconectado
Mensajes: 109
Tu única Limitación Es tú Imaginación (:
|
Hola! Pues tiene razón Alex, te dice eso porque saldria una raiz negativa (imaginaria). Yo lo haría asi int a, b, c; double raiz,x1,x2; a = int.Parse(textBox1.Text); b = int.Parse(textBox2.Text); c = int.Parse(textBox3.Text); if (a == 0) MessageBox.Show("Error La Variable A no puede ser 0"); else { raiz = (b * b) - 4 * (a * c); if (raiz < 0) { MessageBox.Show("Error, raiz negativa (imaginaria)"); } else { x1 = ((-1 * b) + Math.Sqrt(raiz)) / (2 * a); x2 = ((-1 * b) - Math.Sqrt(raiz)) / (2 * a); textBox4.Text = x1.ToString(); textBox5.Text = x2.ToString();
suerte!
|
|
|
En línea
|
...DaR LaS GraCiaS No CuestA NadA...
|
|
|
Amagekure
Desconectado
Mensajes: 63
la noche es mas oscura cuando va a amanecer
|
Buena por tu ayuda gracias a ustedes 3 termine mi programa gracias la mejor web Elhacker.net FORO
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
AYUDA! CON UN SIMPLE PROGRAMA.. ME DA ERROR!! POR QUE??
Programación C/C++
|
julian.97
|
6
|
5,851
|
20 Junio 2011, 13:54 pm
por julian.97
|
|
|
Ayuda simple [php creo que es]
Desarrollo Web
|
Tzdah
|
2
|
2,155
|
11 Febrero 2013, 23:40 pm
por EFEX
|
|
|
Problema programa simple: NULL
Java
|
salvagym
|
2
|
2,517
|
24 Febrero 2013, 20:52 pm
por salvagym
|
|
|
Ayuda con un simple programa
Programación C/C++
|
CGB
|
2
|
1,990
|
23 Agosto 2015, 19:36 pm
por Orubatosu
|
|
|
Una simple ayuda con un programa trabjando con sql
« 1 2 »
Criptografía
|
skingwordgd
|
10
|
7,101
|
15 Marzo 2017, 05:41 am
por skingwordgd
|
|