elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Programación en batch. Comparar una cadena con un entero
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Programación en batch. Comparar una cadena con un entero  (Leído 2,765 veces)
juntacadaveres

Desconectado Desconectado

Mensajes: 76



Ver Perfil
Programación en batch. Comparar una cadena con un entero
« en: 14 Marzo 2019, 20:35 pm »

Hola
estoy empezando en esto de programar, estudio primero de Asir
y tengo una duda con la programación con archivos.bat
quiero que el usuario pueda poner un valor a una variable
sé que esto se logra con un set /p
sin embargo, quiero que los valores estén restringidos solo a números, no a cadenas te textos

set /p num="dame un numero"

obvio pues si el usuario pusiese una letra
no podría hacer operaciones aritmética con dicho valor. saludos


« Última modificación: 14 Marzo 2019, 20:37 pm por juntacadaveres » En línea

Baphomet2204

Desconectado Desconectado

Mensajes: 56


Programo luego existo


Ver Perfil
Re: Programación en batch. Comparar una cadena con un entero
« Respuesta #1 en: 15 Marzo 2019, 18:54 pm »

Esta es una posible solución

Código:
@echo off

:ESNUMERO
echo.
set/p number= "Ingrese un numero: "
if not defined number (echo ERROR: No se ha ingresado nada && goto:ESNUMERO)
set "variable=false"
for /f "delims=abcdefghijklmnopqrstuvwxyzñABCDEFGHIJKLMNOPQRSTUVWXYZÑ" %%a in ("%number%") do set "variable=true"
if ["%variable%"]==["true"] (
if %number% LSS 0 (goto ESNUMERO)
echo se ha ingresado en numero %number%
pause>>nul
exit /b 0
) else (
echo ERROR: Solo se pueden ingresar numeros
goto :ESNUMERO
)

PD: este código tiene sus limites en cuanto a números negativos


« Última modificación: 15 Marzo 2019, 20:28 pm por Baphomet2204 » En línea

$Diseñando_vida

while(vivas)
{
       Come();
       //Duerme();
       Programa();
       Repite();
}
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Transformar una cadena rellenada con ceros a la izquierda a entero
Programación Visual Basic
merlin 2 2,294 Último mensaje 18 Abril 2007, 08:20 am
por merlin
Problema con comparar cadena??
Programación Visual Basic
Hole_System 2 1,971 Último mensaje 11 Julio 2008, 09:08 am
por Hole_System
[RETO] Entero a cadena « 1 2 »
Programación Visual Basic
Karcrack 19 7,920 Último mensaje 1 Septiembre 2010, 21:55 pm
por Psyke1
Error al comparar cadena
Java
mapers 1 1,873 Último mensaje 3 Julio 2012, 10:08 am
por ollo
Pasar de cadena(char) a entero(int) sin sobrepasar el máximo permitido. « 1 2 3 »
Programación C/C++
NOB2014 21 10,725 Último mensaje 9 Enero 2014, 14:35 pm
por leosansan
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines