Autor
|
Tema: Programa Quiniela Deportiva (Leído 8,032 veces)
|
MicroHack
|
Hola, estoy aprendiendo vb.net y tengo que realizar un ejercicio usando arrays en el cual se solicita al usuario los resultados de un evento. El programa funciona correctamente, solo que ahora quiero limitar y controlar el "valor" que el usuario introduce para que no sea diferente de "1", "X" o "2" Para ello he querido usar un While, pero parece que algo falla porque no puedo indicarle los 3 valores a la vez. Dim _var As Char Console.Write("1º Pronostico: ") _var = CChar(Console.ReadLine()) While _var <> "1"c Or "2 c Or "X"c Or "x" ' (Aqui es donde me da el Error) Console.WriteLine("ERROR, Inique un valor entre 1/X/2: ") Console.ReadLine() End While
¿Alguna idea de porque no funciona?
|
|
« Última modificación: 17 Enero 2011, 22:36 pm por [D4N93R] »
|
En línea
|
Hola cariño, pasa por favor, y cierra la puerta al entrar. No quiero que se oigan los disparos fuera.
|
|
|
79137913
Desconectado
Mensajes: 1.169
4 Esquinas
|
HOLA!!! Esto va en .NET (Programacion Gral) MOD: JAJAJA, NO DURO MUCHO EN VB6 XD. While _var <> "1"c Or "2 c Or "X"c Or "x"
Primero, te faltan comillas en el 2, Suponiendo que sea VB6 repeti la condicion completa en cada una, y la "c" que pones despues del string no se para que es. Aunque no veo ningun Vector(array) asi lo arreglaria yo: While _var <> "1" Or _var <> "2" Or _var <>"X" Or _var <> "x"
GRACIAS POR LEER!!!
|
|
« Última modificación: 17 Enero 2011, 19:23 pm por 79137913 »
|
En línea
|
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!" "La peor de las ignorancias es no saber corregirlas"
79137913 *Shadow Scouts Team*
|
|
|
MicroHack
|
HOLA!!! Esto va en .NET (Programacion Gral) MOD: JAJAJA, NO DURO MUCHO EN VB6 XD. While _var <> "1"c Or "2 c Or "X"c Or "x"
Primero, te faltan comillas en el 2, Suponiendo que sea VB6 repeti la condicion completa en cada una, y la "c" que pones despues del string no se para que es. Aunque no veo ningun Vector(array) asi lo arreglaria yo: While _var <> "1" Or _var <> "2" Or _var <>"X" Or _var <> "x"
GRACIAS POR LEER!!! Perdon por ponerlo donde no era, lo de las comillas lo escribi mal aqui pero en el editor las tengo puestas. Y poner: While _var <> "1" Or _var <> "2" Or _var <>"X" Or _var <> "x"
Tampoco funciona porque lo probe antes, uso el VB.NET en Visual Studio 2010
|
|
|
En línea
|
Hola cariño, pasa por favor, y cierra la puerta al entrar. No quiero que se oigan los disparos fuera.
|
|
|
.mokk.
Desconectado
Mensajes: 177
|
Gran error aqui mira Console.WriteLine("ERROR, Inique un valor entre 1/X/2: ") Console.ReadLine()
Porque no estas volviendo a asignarle el nuevo valor a _var y am en el while tmb esta incorrecto a como lo colocastes, podrias tambien usar un IF si se te es mas facil o talves un switch(creo que aqui es select case) P.D. la letra c es alguna variable ? si es asi esta bien colocarla en el while si no lo es solo deberia funcionar usando while _var <> 1 or _var <> 2 or _var <> "x" 'Codigo Console.WriteLine("ERROR, Inique un valor entre 1/X/2: ") _var = Console.ReadLine() end while 79137913: Segun recuerdo en VB.net no difiere mayuscula o minuscula por lo que _var <> "X" or _var <> "x" seria lo mismo con solo colocar uno no?
|
|
« Última modificación: 17 Enero 2011, 19:50 pm por .mokk. »
|
En línea
|
|
|
|
MicroHack
|
No funciona de esa manera. Nose, tiene que haber una sintaxis para que el while pueda concadenar condiciones y comprobarlas en una misma linea.
|
|
|
En línea
|
Hola cariño, pasa por favor, y cierra la puerta al entrar. No quiero que se oigan los disparos fuera.
|
|
|
.mokk.
Desconectado
Mensajes: 177
|
O si se me habi pasado xD en ves de Or, es And , porque usando or esque si alguna de esas se cumple repetira el while, lo cual lo que deceamos esque solo se repita si todas es lo mismo osea True, en fin el codigo quedaria asi: Dim _var As Char Console.Write("1º Pronostico: ") _var = CChar(Console.ReadLine()) While _var <> "1" And _var <> "2" And _var <> "X" And _var <> "x" Console.WriteLine("ERROR, Inique un valor entre 1/X/2: ") _var = CChar(Console.ReadLine()) End While
Tenian razon sobre lo de "X" y "x", el programa si nota la diferencia, me disculpo por mi ignorancia en ese aspecto. jeje
|
|
« Última modificación: 18 Enero 2011, 06:57 am por .mokk. »
|
En línea
|
|
|
|
MicroHack
|
EDIT: Esta es la sintaxis correcta While (_var <> "1"c And _var <> "2"c And _var <> "x"c And _var <> "X"c) Console.WriteLine("ERROR, Inique un valor entre 1/X/2: ") _var = CChar(Console.ReadLine())
Ahora si me funciona, gracias a todos.
|
|
« Última modificación: 18 Enero 2011, 13:57 pm por MicroHack »
|
En línea
|
Hola cariño, pasa por favor, y cierra la puerta al entrar. No quiero que se oigan los disparos fuera.
|
|
|
79137913
Desconectado
Mensajes: 1.169
4 Esquinas
|
HOLA!!! 79137913: Segun recuerdo en VB.net no difiere mayuscula o minuscula por lo que _var <> "X" or _var <> "x" seria lo mismo con solo colocar uno no?
En cuanto a manejo de variables no diferencia entre mayusculas y minusculas, pero en manejo de strings (cadenas de texto) si diferencia, * si osea si pones un in que sea x=X va a ser true, pero si pones un if que sea "x"="X" va a ser false. *MOD: Para que no diferencie, tendrias que hacer algo asi UCase("x")=UCase("X") o sino LCase("x")=LCase("X") GRACIAS POR LEER!!!
|
|
« Última modificación: 18 Enero 2011, 15:39 pm por 79137913 »
|
En línea
|
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!" "La peor de las ignorancias es no saber corregirlas"
79137913 *Shadow Scouts Team*
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
¿ Alguien juega a la Quiniela (españa) ? Que me resuelva unas dudas !!
Foro Libre
|
Mr.Know
|
1
|
3,458
|
1 Noviembre 2010, 18:04 pm
por Arkaitz10
|
|
|
Comprobar nº aciertos en una quiniela reducida de 7 dobles C#
Ejercicios
|
elnorber
|
0
|
10,805
|
18 Marzo 2011, 18:44 pm
por elnorber
|
|
|
Programar en C quiniela.
Programación C/C++
|
pepeluoman
|
6
|
5,317
|
30 Diciembre 2013, 14:56 pm
por dato000
|
|
|
Programar quiniela en C.
Programación General
|
pepeluoman
|
6
|
5,256
|
23 Enero 2014, 22:54 pm
por jdomgo3
|
|
|
Programar quiniela en C.
Programación C/C++
|
pepeluoman
|
7
|
6,828
|
3 Enero 2014, 15:06 pm
por leosansan
|
|