Programación en batch. Comparar una cadena con un número entero

Junt4cadav3r

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

Tox1ne

comprueba si la variable contiene un número, si no lo tiene, échalo para atrás, si lo tiene, procede con la aritmética.

SET "var="&for /f "delims=0123456789" %%i in ("%variable") do set var=%%i
if defined var (echo %variable No es un numero) else ([b]##tu aritmética##[/b])
yasurio

Aqui solamente saben hacer pseudocodigos

1 respuesta
Tox1ne

#3 Si te parece te hago a ti también los deberes de mates.

PD: el ejemplo que he puesto en #2 es una manera de hacerlo, seguro que hay mejores, pero la idea básicamente que tienes que tener, #1 es que tienes que ver si dentro de la variable hay un número u otra cosa y proceder al respecto en ambas situaciones.

Es más importante que pilles el concepto que el código en sí.

yasurio

No lo digo por ti xD

Usuarios habituales

  • yasurio
  • Tox1ne
  • Junt4cadav3r