| 
	
		|  Autor | Tema: [batch] comparar una variable con varios valores  (Leído 18,576 veces) |  
	| 
			| 
					
						| moikano→@ 
								 
								
								 Desconectado 
								Mensajes: 572
								
								 
								Cultiva tu mente y cuerpo, son tu única propiedad
								
								
								
								
								
								     | 
 
Saludos  Estoy intentando comparar una variable con varios valores pero no lo consigo, algo estoy haciendo mal o no hago lo debido. Os enseño lo que he probado. :siecho la variable coincide con  1,8 o 15:noecho la variable no coincide
 La variable está definida anteriormente, quiero decir que no está vacía sino sería fácil saber cual es el error =D Luego también probé  con for, pero tampoco me funcionó. ):siecho la variable coincide con  1,8 o 15:noecho la variable no coincide
 En caso de que se pueda hacer sin el for preferiría hacerlo sin el, ya que creo quedará mas corto el code. Gracias de antemano =)
 
 |  
						| 
								|  |  
								| « Última modificación: 22 Diciembre 2010, 13:49 pm por moikano→@ » |  En línea | 
 
 |  |  |  | 
			| 
					
						| Diego_Schneider 
								
								 Desconectado 
								Mensajes: 8
								
								
								
								
								
								   | 
 
Buenas. El problema es simple, no podes comparar con varias al mismo tiempo. Mira este  @echo offset /p var="Elija el numero de la variable > "
 if "%var%"=="1" goto :si
 if "%var%"=="8" goto :si
 if "%var%"=="15" goto :si
 goto :no
 :si
 echo la variable coincide con 1,8 o 15
 pause
 exit
 :no
 echo la variable no coincide
 pause
 exit
hay dos problemas: 1°- Para comparar, hay que usar dos veces el signo igual ( == en vez de = ) 2°- Hay que comparar de uno en uno, si %var% es igual a 1, va a :si si es igual a 8 o a 15, tambien, y si no se cumple ninguno, continua con el codigo, o sea, que te manda a :no 3°- Si al final del :si no poner un "exit" te va a continuar con el :no , por eso agregué "pause & exit" al final del :si y :no Bueno, ademas, agregue para que elijas el numero de la variable, a ver si funciona en todos los ejemplos. El programa esta completamente funcional     asi que no te va a dar problemas ese. Nos vemos   
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| moikano→@ 
								 
								
								 Desconectado 
								Mensajes: 572
								
								 
								Cultiva tu mente y cuerpo, son tu única propiedad
								
								
								
								
								
								     | 
 
Si esa solución es la que apliqué yo, pero quería saber si hay una forma mas "limpia" de comparar una variable con varios valores.
 Gracias igualmente =)
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| flony 
								 
								
								 Desconectado 
								Mensajes: 585
								
								   | 
 
digo una idea seria hacer un seudocodigo que simule un vector aplicando polimetria    ...pero la verdad esta tan sencilla la solucion que dio Diego_Schneider que no aplicaria nada    |  
						| 
								|  |  
								|  |  En línea | 
 
 si un problema no tiene solucion entonces no es un problema...es algo inevitable  |  |  |  | 
			| 
					
						| moikano→@ 
								 
								
								 Desconectado 
								Mensajes: 572
								
								 
								Cultiva tu mente y cuerpo, son tu única propiedad
								
								
								
								
								
								     | 
 
 pseudocódigo que simule un vector aplicando polimetría Si supiera lo que me estas diciendo =D Si esa solución es la que apliqué yo, pero quería saber si hay una forma mas "limpia" de comparar una variable con varios valores. Pues eso =) |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| xassiz~ | 
 
Modificando un poco tu código   )
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| moikano→@ 
								 
								
								 Desconectado 
								Mensajes: 572
								
								 
								Cultiva tu mente y cuerpo, son tu única propiedad
								
								
								
								
								
								     | 
 
Solo era ponerle el?! →~← Vaya pues gracias. Voy a probarlo. |  
						| 
								|  |  
								| « Última modificación: 22 Diciembre 2010, 13:50 pm por moikano→@ » |  En línea | 
 
 |  |  |  | 
			| 
					
						| xassiz~ | 
 
No, lo que pasa es que tu tenías puesto esto:  
 Además, el símbolo de comparación es "== " |  
						| 
								|  |  
								| « Última modificación: 22 Diciembre 2010, 14:06 pm por pablomi » |  En línea | 
 
 |  |  |  | 
			| 
					
						| moikano→@ 
								 
								
								 Desconectado 
								Mensajes: 572
								
								 
								Cultiva tu mente y cuerpo, son tu única propiedad
								
								
								
								
								
								     | 
 
Si si, lo e modificado conforme lo e visto al comparar el tuyo con le mio =) De todas formas no funciona muy bien igualmente, me explico con el código mejor: )
 Bueno pues hoy estamos a día 22 y el code me saca que "no coincide" con los tres valores. |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| xassiz~ | 
 |  
						| 
								|  |  
								| « Última modificación: 22 Diciembre 2010, 14:09 pm por pablomi » |  En línea | 
 
 |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | Comparar valores String o Char [C++] Programación C/C++
 | zikotik | 9 | 7,621 |  16 Noviembre 2014, 20:39 pm por zShackra
 |  
						|   |   | copiar ciertos valores de una variable en otra variable en lenguaje C. Programación C/C++
 | fafafa01 | 9 | 8,400 |  19 Abril 2016, 18:32 pm por geeke
 |  
						|   |   | [Batch] - Sumar valores a la variable %time% Scripting
 | gado2612 | 2 | 5,339 |  4 Julio 2017, 13:46 pm por gado2612
 |  
						|   |   | Herramienta para buscar y comparar valores en ficheros de datos binarios. Ingeniería Inversa
 | xustyx | 9 | 7,272 |  12 Mayo 2018, 13:13 pm por xustyx
 |  
						|   |   | Comparar variable de un comando con variable obtenida por read Scripting
 | izi4me | 1 | 4,201 |  31 Diciembre 2021, 18:31 pm por izi4me
 |    |