Versión Completa : Programa que realiza operaciones aritméticas en VB.NET
AnKaBeDi
enero 27, 2007, 06:51
Primero que todo, no encontré el foro de Visual Basic.NET, así que si lo hay, podrían mover este mensaje.... gracias...
Quisiera saber cómo hago para saber si un usuario introdujo un caracter (operador aritmético)?
Es decir, estoy haciendo un programa que realice las operaciones aritméticas básicas (+,-,*,/) el usuario debe entrar dos números enteros y un caracter (+,-,*,/) y realizar la operación que indica el caracter , pero si introduce un caracter distinto a los permitidos, se debe enviar un mensaje que diga que es un caracter inválido.
Dim caracter as char
If caracter <> "+" Or caracter <> "-" Or caracter <> "*" Or caracter <> "/" Then
Console.WriteLine("Introduzca un caracter válido")
ElseIf caracter = "+" Then
suma = num1 + num2
Console.WriteLine("La suma de " & num1 & "y " & num2 & " es " & suma)
ElseIf caracter = "-" Then
resta = num1 - num2
Console.WriteLine("La resta de " & num1 & "y " & num2 & " es " & resta)
ElseIf caracter = "*" Then
producto = num1 * num2
Console.WriteLine("El producto de " & num1 & "y " & num2 & " es " & producto)
ElseIf caracter = "/" Then
If (num1 And num2) > 0 Then
division = num1 / num2
Console.WriteLine("La división de " & num1 & "entre " & num2 & " es " & division)
ElseIf num2 = 0 Then
If num1 > 0 Then
Console.WriteLine("+ infinito")
ElseIf num1 < 0 Then
Console.WriteLine("- infinito")
ElseIf num1 = 0 Then
Console.WriteLine("Indeterminado")
End If
End If
Console.ReadLine()
Estoy introduciendo uno válido y me sale el mensaje "Introduzca un caracter válido", por qué?
Oesoto
enero 27, 2007, 07:47
Podrías poner el segmento de código donde estas realizando la comprobación para poder analizar la falla mas facilmente?
NSlaver
enero 28, 2007, 10:03
No tengo mucha idea de VB pero lo que miro en tu codigo:
SI <> es para diferente:
Estas escribiendo:
Si la var caracter es diferente de "+" o
la var caracter es diferente de "-" o
la var caracter es diferente de "*" o
la var caracter es diferente de "/" o
Entonces siempre va a entrar a
Console.WriteLine("Introduzca un carácter válido")
Por que siempre va a ser diferente de + o de - o de / o de * solucionas cambiando las validaciones de o por un y
AnKaBeDi
enero 28, 2007, 10:36
Bueno, la verdad no comprendo muy bien la diferencia, pero funcionó al cambiar por AND, aclaro que estoy aprendiendo a programar.
Muy agradecida... NSlaver
carloscaliche
enero 28, 2007, 12:09
nooo compadre lo que pasa es que en la validacion de codigo no debe de ir and hay si que queda peor trata de utilizar CASE en cada CASE colocas los comdos y al final colocas la opcion de si no marca ninguno entonces de el mensaje de error.
vBulletin®, Copyright ©2000-2008, Jelsoft Enterprises Ltd.