Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: BatchianoISpyxolo en 6 Mayo 2012, 16:35 pm



Título: [Reto Batch] Hex2Dec Batch Command
Publicado por: BatchianoISpyxolo en 6 Mayo 2012, 16:35 pm
Aquí pueden comentar todo lo que quieran, sus dudas, avances o soluciones acerca del siguiente reto:

Reto iniciado por Batchiano

Reto Nº 11

Nombre:          Hex2Dec Batch Command
Dificultad:        3/10
Objetivo:         Crear un comando que convierta un número en hexadecimal a decimal.
Pista: El código es muy corto. Se aconseja pipear.
Ejemplo:

(http://www.imagenonline.com/img_a241242.png)

Solución:

Código
  1. @echo off
  2. if "%1"=="" (goto syn) else (
  3. echo | set /a %1
  4. exit /b
  5. )
  6.  
  7. :syn
  8. echo Error de sintaxis. %0 [NUMERO EN HEXADECIMAL]


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: Stakewinner00 en 6 Mayo 2012, 17:29 pm
mañana are este reto que este es bastante sencillo

Pndre una parte del code.
Lo e echo con la forma facil
if ["%1"]==["10"] (goto:10) -ESTO REDIRIGE A LA PARTE QUE MUESTRA EL NUMERO 10 EN HEXADECIMAL-

La cosa facil serai ir colocando el if con todos los numero y ya esta.


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: BatchianoISpyxolo en 6 Mayo 2012, 17:56 pm
mañana are este reto que este es bastante sencillo

Pndre una parte del code.
Lo e echo con la forma facil
if ["%1"]==["10"] (goto:10) -ESTO REDIRIGE A LA PARTE QUE MUESTRA EL NUMERO 10 EN HEXADECIMAL-

La cosa facil serai ir colocando el if con todos los numero y ya esta.

Por ahí no van los tiros. Pero se hace muy fácil.


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: Stakewinner00 en 6 Mayo 2012, 17:58 pm
entonces no se como
ajaj


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: $Edu$ en 6 Mayo 2012, 19:58 pm
mañana are este reto que este es bastante sencillo

Pndre una parte del code.
Lo e echo con la forma facil
if ["%1"]==["10"] (goto:10) -ESTO REDIRIGE A LA PARTE QUE MUESTRA EL NUMERO 10 EN HEXADECIMAL-

La cosa facil serai ir colocando el if con todos los numero y ya esta.

XDDD y si el usuario ingresa: 0x1b6f8 ? xDD

Cuando son retos que tengan que ver con matematica, es mejor investigar como se hace "manualmente" y despues recien hacer el programa


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: -- KiLiaN -- en 6 Mayo 2012, 23:30 pm
Aqui dejo el mio :P

Código
  1. @Echo off
  2. If "%1" EQU "" Echo Hex2dec [Numero decimal]
  3. set /A dec=1 * %1 2>nul
  4. Echo %dec%

EDIT: Lo siento, no probé el code (al ser tan corto pues..xD) asique no me percaté de ese detalle pero ya lo solucioné ;)


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: $Edu$ en 7 Mayo 2012, 00:06 am
Aqui dejo el mio :P

Código
  1. @Echo off
  2. If %~1 EQU "" Echo Hex2dec [Numero en Hexadecimal]
  3. set /A dec=(1 * %1)
  4. Echo %dec%


Jajaja bien! no sabia que se podia hacer eso xD


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: BatchianoISpyxolo en 7 Mayo 2012, 08:11 am
Aqui dejo el mio :P

Código
  1. @Echo off
  2. If %~1 EQU "" Echo Hex2dec [Numero en Hexadecimal]
  3. set /A dec=(1 * %1)
  4. Echo %dec%


Hay que cuidar bien los códigos, porque siempre se va a ejecutar:

Código
  1. set /A dec=(1 * %1)
  2. Echo %dec%

Haya primer argumento o no. Y eso no es corecto. Tampoco la condición del IF es correcta, por tanto, no puedo dar por válido el código.
Como ya vieron como se hace, pongo la solución en el primer post, y cuando -- KiLiaN -- me entregue el código bien, se le adjudicará un punto. (Si los moderadores así lo creen conveniente).


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: Eleкtro en 7 Mayo 2012, 08:34 am
Haya primer argumento o no. Y eso no es corecto. Tampoco la condición del IF es correcta, por tanto, no puedo dar por válido el código.
Como ya vieron como se hace, pongo la solución en el primer post, y cuando -- KiLiaN -- me entregue el código bien, se le adjudicará un punto. (Si los moderadores así lo creen conveniente).

Es cierto que el code necesita unos pequeños retoques, Pero tampoco hay que ponerse "Modo exigente ON" xD, El code cumple su función, Convertir un número Hexadecimal a Decimal, Es lo que pedias en el reto :P.

Salu2.


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: BatchianoISpyxolo en 7 Mayo 2012, 09:02 am
Es cierto que el code necesita unos pequeños retoques, Pero tampoco hay que ponerse "Modo exigente ON" xD, El code cumple su función, Convertir un número Hexadecimal a Decimal, Es lo que pedias en el reto :P.

Salu2.

No me importaría si fueran 1000 líneas de código, pero son 3.  :o


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: -- KiLiaN -- en 7 Mayo 2012, 10:41 am
Cambiado  :silbar:


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: 79137913 en 9 Mayo 2012, 14:30 pm
HOLA!!!

Código
  1. SET /A A=1*%1&echo %A%

GRACIAS POR LEER!!!


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: Eleкtro en 9 Mayo 2012, 14:52 pm
HOLA!!!

Código
  1. SET /A A=1*%1&echo %A%

GRACIAS POR LEER!!!

Hola
Esa es la función en sí, Que obtiene el número, Pero el reto pide "crear un comando"

salu2!


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: 79137913 en 9 Mayo 2012, 15:59 pm
HOLA!!!

Hola
Esa es la función en sí, Que obtiene el número, Pero el reto pide "crear un comando"

salu2!


Guarda eso en hextodec.bat

y en la linea de comandos pone Hextodec.bat 0x1ab vas a ver que anda

GRACIAS POR LEER!!!


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: $Edu$ en 9 Mayo 2012, 17:27 pm
La primera vez que se ejecuta no, despues si, ponelo asi:

Código
  1. @echo off
  2. SET /A A=1*%1
  3. echo %A%
  4.  

Pero se ve que pide que no tenga errores, por ejemplo si no se envia nada o si se envia otra cosa..


Título: Re: [Reto Batch] Hex2Dec Batch Command
Publicado por: Binary_Death en 22 Julio 2012, 06:00 am
Hubiera sido más emocionante Dec2Hex, pero qué le vamos a hacer  :P
No sé, quiero solucionar todos los retos uno por uno, pero es que este está más que solucionado...

Código:
@cmd/c set/a 0x%~1 

Comando listo. Lo guardas como .bat y lo llamas desde la shell de comandos.
Devuelve cualquier valor hexadecimal en decimal.