LabView - problemas con ''case''

 
Vista:

problemas con ''case''

Publicado por Antonio Espejo (16 intervenciones) el 18/01/2010 15:42:52
Hola a todos,
tenía una duda con las estructuras ''case''
¿siempre hay q poner un caso por defecto?
¿no se podría decir que si algo no es true, que no haga nada por ej?
no sé si hay otra opción q sea un IF mismamente...
en fin... muchas gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problemas con ''case''

Publicado por eZ (1 intervención) el 18/01/2010 17:25:01
Las estructuras case soportan varios tipos de datos, tales como:
Booleanos (verdadero / falso)
cadena de caracteres
Enteros
Enum , etc

En el caso de los booleanos, la estructura case tendra solo dos opciones: Caso verdadero y caso falso... aqui no hay que definir caso por defecto...

Por mencionar un ejemplo:
Una aplicacion que muestra un mensaje tipo "pop up" al usuario solo cuando el caso es verdadero....
El codigo entonces contendra los nodos que ejecutan el mensaje en el caso verdadero... el caso falso puedes dejarlo vacio... de ese modo obtendras el comportamiento descrito en el ejemplo

Ahora en el caso de utilizar las estructuras caso seleccionandolos con otros tipos de datos, tales como numericos, cadena de caracteres, enum, etc... es necesario definir un caso por defecto

porque?

En el caso de los booleanos, solo existen dos valores disponibles : Falso / Verdadero... (si no es Juana, es Chana) no existe otro... por eso en booleanos no es necesario definir un caso por defecto
En el caso de los otros... es distinto
Ejemplo: Si conectas tu estructura caso a un numerico... entonces tendras casos como 0,1,2,3,4,...n segun el valor de entrada, sera el caso que se ejecute

Supongamos que tu defines solo 4 casos: 0,1,2,3 y realiza distintas operaciones segun el caso... que pasara si a tu entrada la alimentas con un valor distinto a los que definiste (supongamos un valor de 5)?
Es por eso necesario (de hecho LabVIEW te lo pone por default y si lo remueves te marca error de sintaxis... o mejor dicho "flecha rota") el uso de un valor por defecto
para que todos los valores fuera de ese se ejecuten en dicho caso.

Algo parecido sucede con los strings... pero todavia con mayor complejidad pues es sensible a mayusculas/minusculas, espacios, etc...

espero que esta informacion ayude
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problemas con ''case''

Publicado por Antonio Espejo (16 intervenciones) el 18/01/2010 21:27:09
Intuía q ocurría eso que me cuentas...

la pregunta es: ¿se puede resolver de alguna manera...?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problemas con ''case''

Publicado por eZ (194 intervenciones) el 18/01/2010 21:51:49
Tu cazo (utilice cazo a proposito) es que tienes una aplicacion que de repente te da un valor que no esperas y como no hay caso definido para ese numero o string... entonces se ejecuta el caso que ademas de numero este definido como caso por default

La manera de resolverlo es crear un caso "dedicado" por ejemplo dale cualquier valor... (posiblemente: -1, pero eso depende de que valores sean los que esperas... porque si tu esperas un -1... entonces asignale otro valor) y a ese caso definelo como "default". Para definirlo como default haz lo siguiente:

Colocate en el caso que creaste y presiona el boton secundario del mouse... selecciona la opcion : "Make this the default case"

Por favor retroalimenta si eso es de utilidad

En caso contrario por favor provee tu email para ponerme en contacto contigo... desafortunadamente no se pueden agregar imagenes y en ocasiones una imagen dice mas que 1000 palabras
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problemas con ''case''

Publicado por Antonio Espejo (16 intervenciones) el 18/01/2010 21:56:50
sí que sé como se hace poner el case por defecto, mi problema, es que me introduce vectores nulos cada vez q entro en el case por default, y a eso he de sumar, que entro muchisimas veces al caso por defecto por lo que al final tengo lo mas parecido a una matriz sparse, es decir, unas 259950 filas de ceros y 50 filas de informacion valiosa... por lo q se me hace una matriz poco manejable...

mi correo es el siguiente:

[email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problemas con ''case''

Publicado por eZ (194 intervenciones) el 18/01/2010 22:05:22
10-4
Revisa tu correo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar