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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]  (Leído 7,292 veces)
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.866



Ver Perfil
[Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« en: 8 Julio 2012, 13:48 pm »

Aquí pueden comentar todo lo que quieran, sus dudas, avances o soluciones acerca del siguiente reto:

Reto iniciado por binary_death

Reto Nº 15 BATCH

Nombre:          Variaciones con repetición, con 26 elementos [abecedario inglés] (binary_death)
Dificultad:        7/10
Objetivo:         Realizar un batch script al que, dado una longitud máxima de carácteres especificada, los combine de todas las formas posibles.
                         Esto puede servir como un generador de diccionarios para usar en programas de frute force.
Pista:               Recursividad, for anidados, todo sirve aunque hay formas más óptimas que otras.
Ejemplo:         


En línea



Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #1 en: 8 Julio 2012, 18:42 pm »

Procurad innovar lo máximo posible  :P aburriría un poco ver un montonazo de for's anidados como http://foro.elhacker.net/scripting/batch_aporte_generador_diccionario-t349722.0.html , por poner un ejemplo de los muchos códigos iguales que hay.

Ah, una cosa más: usando cualquier tipo de recursividad la función queda unas 10 veces más lenta, aunque con menos código. Una pista es que hay un punto intermedio entre los for's anidados y la función corta, y esa es la forma más eficaz de hacer las variaciones de 26 elementos tomados de X en X.

Un saludo, y suerte.


« Última modificación: 11 Julio 2012, 01:21 am por Binary_Death » En línea

BatchianoISpyxolo

Desconectado Desconectado

Mensajes: 166


Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #2 en: 11 Julio 2012, 00:25 am »

Teniendo en cuenta que son variaciones con repetición de 26 elementos cogidos de 26 en 26...

VR(26,26) = 2626 = 6156119580207157310796674288400203776 combinaciones posibles...

Aunque en la imagen aparecen cadenas de 4 caracteres lo que equivale a...

VR(26,4) = 264 = 456976 combinaciones posibles...

En definitiva, ¿cadenas de qué longitud? ¿O cadenas de 1..26?
« Última modificación: 11 Julio 2012, 00:27 am por BatchianoISpyxolo » En línea

Puede que desees aprender a programar desde 0: www.espascal.es
Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #3 en: 11 Julio 2012, 01:19 am »

La idea es que genere cadenas de X carácteres, donde X lo elige el usuario.
En mi caso, ese programa que ves en la imagen recibe la longitud de la cadena en forma de parámetro.

En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.866



Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #4 en: 11 Julio 2012, 03:17 am »

supongo que lo que quiso decir binary_death (26 elementos) se refirió a que el code debe soportar las 26 letras del abecedario inglés, donde no está la Ñ... En el abecedario español son 27.

Saludos

En línea



BatchianoISpyxolo

Desconectado Desconectado

Mensajes: 166


Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #5 en: 11 Julio 2012, 14:05 pm »

Entonces, como son cadenas de longitud x...

26 · 26 · 26 · ... · 26 (x veces) = 26x = ∏xi=1 26 (x∈Ν)

combinaciones totales
« Última modificación: 11 Julio 2012, 20:19 pm por BatchianoISpyxolo » En línea

Puede que desees aprender a programar desde 0: www.espascal.es
79137913


Desconectado Desconectado

Mensajes: 1.169


4 Esquinas


Ver Perfil WWW
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #6 en: 17 Julio 2012, 18:12 pm »

HOLA!!!

Código
  1. @ECHO OFF
  2. SETLOCAL enabledelayedexpansion
  3.  
  4. SET "CHARS=a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,w,w,x,y,z"
  5. SET "INI=0"
  6. SET /P LONGITUD=Inserte la longitud deseada:
  7.  
  8. CALL :GENERAR
  9.  
  10.  
  11. :GENERAR
  12. IF %INI% neq %LONGITUD% (
  13. SET /a "INI+=1"
  14. FOR %%c IN (!CHARS!) DO CALL :GENERAR "%~1%%~c"
  15. SET /a "INI-=1"
  16. ) else (
  17. SET "CADENA=%~1"
  18. ECHO.!CADENA!
  19. )
  20. GOTO:EOF

http://pastebin.com/9Wy2Msw7

GRACIAS POR LEER!!!
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*
Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #7 en: 17 Julio 2012, 18:51 pm »

Es una solución, pero está muy vista  :P

http://foro.el-hacker.com/f82/f-bat-generador-de-combinaciones-154744/
En línea

79137913


Desconectado Desconectado

Mensajes: 1.169


4 Esquinas


Ver Perfil WWW
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #8 en: 17 Julio 2012, 19:10 pm »

HOLA!!!

Sip, eso se llama venganza por las soluciones que colocaba yo eran de autoria propia y caia otro y hacia copypaste de otro lado.

GRACIAS POR LEER!!!
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*
Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: [Reto Batch] Variaciones con repetición,con 26 elementos [abecedario inglés]
« Respuesta #9 en: 17 Julio 2012, 19:16 pm »

HOLA!!!

Sip, eso se llama venganza por las soluciones que colocaba yo eran de autoria propia y caia otro y hacia copypaste de otro lado.

GRACIAS POR LEER!!!

Ciertos códigos son tan comunes ya que ni se pueden considerar copiados, como este... que se usa en todos los programas brute force en batch.

Pero hay más formas de hacer lo mismo y muy divertidas. Venga, exprímanse un poco los sesos que siempre viene bien  :P
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Posición en el abecedario [Batch]
Ejercicios
leogtz 5 12,664 Último mensaje 9 Junio 2009, 18:39 pm
por Eliptico
Repetición de palabra en batch « 1 2 »
Scripting
javiii_11 13 8,327 Último mensaje 1 Diciembre 2010, 00:01 am
por javiii_11
[BATCH] Manual de Batch (INGLÉS)
Scripting
Eleкtro 4 5,276 Último mensaje 16 Julio 2012, 17:36 pm
por Eleкtro
[BATCH] programar tarea una vez al mes sin repeticion [RESUELTO]
Scripting
imlikeabird34 7 5,461 Último mensaje 21 Diciembre 2012, 03:45 am
por imlikeabird34
VARIACIONES de n elementos tomados de m en m y sin repetición. VISUAL BASIC
Programación Visual Basic
iaycart 0 1,774 Último mensaje 4 Octubre 2015, 08:26 am
por iaycart
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines