Resolver ecuaciones Visual Basic 6.0

Iniciado por oJosLoCos, 7 Julio 2009, 20:22 PM

0 Miembros y 3 Visitantes están viendo este tema.

VonN

Puedes copiar por entero tu código, creo que será mas fácil.
Trata de utilizar GeShi  ;)



Se toma por necios a aquellos que dicen lo que todos pesamos

oJosLoCos

Option Explicit



Private Sub Igual_Click()
If Signo.List = "+" Then
NumC = Val(NumA) + Val(NumB)  'Marcar + en lista , sumar

ElseIf Signo.List = "-" Then
NumC = Val(NumA) - Val(NumB)  'Marcar - en lista , restar

ElseIf Signo.List = "/" Then
NumC = Val(NumA) / Val(NumB)  'Marcar / en lista, dividir


ElseIf Signo.List = "*" Then
NumC = Val(NumA) * Val(NumB)  'Marcar * en lista , multiplicar
End If
End Sub


Disculpa no se que es eso de ghesi..  xD

Esque a la hora de ejecutar da error...
>>Visita Nuestra Informacion De GTA IV En * www.cdm.foros.ws *

VonN

Eso es todo?  :o

Bien, supongo que en tu form pusiste un textbox o un label.



Se toma por necios a aquellos que dicen lo que todos pesamos

oJosLoCos

Si , el codigo es ese.. y ya da error.

Hay 2 cajas de texto que son NumA y NumB
hay una lista de opciones a escoger que hay + - / * (4 opciones)
Hay un comandbuton , que se llama Igual
Luego hay otra caja de texto , que es NumC , donde deberia salir el resultado de la operacion..

Y he puesto condiciones , que dependiendo de lo que se marque en la lista de opciones , se haga un aoperacion u otra.. si marco + , al darle al comandbuton Igual , pues que efectue una suma y aparezca el resultado en NumC , pero nada.. no funciona.
>>Visita Nuestra Informacion De GTA IV En * www.cdm.foros.ws *

VonN

Ahora entiendo, bien:

En las cajas de ingreso, para obtener su valor:
Código (vb) [Seleccionar]

Val(NumA.text)
Val(NumB.text)


Para asignarles el valor a la caja de "resultado":
Código (vb) [Seleccionar]
NumC.text=Val(NumA.Text) + Val(NumB.text)

Te recomiendo que comienzas a usar algunos estándares de VB, ejemplos:

En buttons utiliza:

Cmd_Mybutton
Cmd_Resultado
CmdResultado

En textbox:

TxtNum1
Txt_Num2

En labels:

Lbl_Num1
LblNum2

De esa forma es más fácil leer el código. Al principio cuando comencé leyendo el code, NUMA y NUMB parecían variables más que nada.

Un saludo



Se toma por necios a aquellos que dicen lo que todos pesamos

oJosLoCos

Ok , empezare a usarlos segun ese criterio.

He reparado el asunto de los .text

Pero ahora al darle al comanbuton , me sale un error

Error de compilacion: el argumento no es opcional

Y me subralla en amarillo:

Private Sub Igual_Click()
If Signo.List = "+" Then
NumC.Text = Val(NumA.Text) + Val(NumB.Text)  'Marcar + en lista , sumar

ElseIf Signo.List = "-" Then
NumC.Text = Val(NumA.Text) - Val(NumB.Text)  'Marcar - en lista , restar

ElseIf Signo.List = "/" Then
NumC.Text = Val(NumA.Text) / Val(NumB.Text)  'Marcar / en lista, dividir


ElseIf Signo.List = "*" Then
NumC.Text = Val(NumA.Text) * Val(NumB.Text)  'Marcar * en lista , multiplicar
End If
End Sub

A que se deve?
>>Visita Nuestra Informacion De GTA IV En * www.cdm.foros.ws *

VonN

Te marca el error en el método que utilizas no en la propiedad del componente.

Bien, te dejo un ejemplo de como utilizar el listbox:

Código (vb) [Seleccionar]
Private Sub Command1_Click()
If List1.List(List1.ListIndex) = "+" Then
    Label1.Caption = Val(Text1.Text) + Val(Text2.Text)
End If
End Sub

Private Sub Form_Load()
List1.AddItem "+"
List1.AddItem "-"
Text1.Text = ""
Text2.Text = ""
Label1.Caption = ""
End Sub



Se toma por necios a aquellos que dicen lo que todos pesamos

seba123neo

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

oJosLoCos

aqui sta el codigo final

Private Sub Igual_Click()
If Signo.List(Signo.ListIndex) = "+" Then
NumC.Text = Val(NumA.Text) + Val(NumB.Text) 'Marcar + en lista , sumar

ElseIf Signo.List = "-" Then
NumC.Text = Val(NumA.Text) - Val(NumB.Text) 'Marcar - en lista , restar

ElseIf Signo.List = "/" Then
NumC.Text = Val(NumA.Text) / Val(NumB.Text)  'Marcar / en lista, dividir


ElseIf Signo.List = "*" Then
NumC.Text = Val(NumA.Text) * Val(NumB.Text)  'Marcar * en lista , multiplicar
End If
End Sub

Private Sub Form_Load()
Signo.AddItem "+"
Signo.AddItem "-"
Signo.AddItem "/"
Signo.AddItem "*"
End Sub


Lo amarillo es el error que me sigue dando.. u.u ya me desespero
>>Visita Nuestra Informacion De GTA IV En * www.cdm.foros.ws *

BlackZeroX

The Dark Shadow is my passion.