Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: legolas266 en 25 Febrero 2013, 20:33 pm



Título: Ayuda con Scripts Batch.
Publicado por: legolas266 en 25 Febrero 2013, 20:33 pm
Hola, lo primero disculpas a Elektro-Hacker por duplicar el post, entendí mal lo que me dijo en otro post. Ahora bien, necesito ayuda para realizar estos ejercicios de programacion en Batch. Soy nuevo en esto y se me hace muy complicado. A ver si alguien me pudiera ayudar a completarlos y comprenderlos que es lo mas importante.

Ejercicio 1: Introducida una palabra y un numero por el usuario, indicar que letra se encuentra en la posición indicada por dicho numero.

Ejercicio 2: Introducidos 3 numeros por el usuario, mostrarlos en pantalla de manera ordenada creciente o decreciente según lo indique el usuario.

Ejercicio 3: Introducida una palabra por el usuario,  devolver  cual será el valor total. Para ello supondremos que la posición de cada palabra en el abecedario corresponde con su valor. (Por ejemplo: ANA -->  1 + 14 + 1 )

Ejercicio 4: Introducida una fecha por el usuario (Dia, Mes, Año), indicar si una persona es mayor de edad o no.

Ejercicio 5: Realizar el juego de los numeros, es decir, tendremos un número aleatorio que deberemos averiguar con un máximo de 5 intentos. En todo momento se deberá indicar al jugador si la cifra que busca es mayor o menor a la introducida. Al final se mostrará un mensaje indicando si se ha acertado o no. En caso de haberse acertado, se mostrarán diferentes mensajes, según el número de intentos realizados.

Gracias por anticipado  a todos por su ayuda.


Título: Re: Ayuda con Scripts Batch.
Publicado por: Eleкtro en 25 Febrero 2013, 21:20 pm
Ya va siendo hora de que intentes hacer los ejercicios por tu cuenta... y nosotros te ayudaremos donde te bloquees... pero es que pides que hagan el trabajo por tí.

Los 5 ejercicios se basan en el uso del FOR /L, SET /A, SET /P, y el Substring.

Es fácil de hacerlos, pero yo no te lo voy a dar hecho otra vez, aquí tienes dos ejemplos de como usar lo que necesitas: http://foro.elhacker.net/programacion_general/ayuda_para_realizar_2_programas_en_batch-t383910.0.html

Pista Ejercicio 1:
Código
  1. Set "Palabra=ElHacker.Net"
  2. Echo+ Palabra: %Palabra%
  3. Echo+ Primera letra: %Palabra:~0,1%
  4. Echo+ Ultima letra: %Palabra:~-1%

Pista Ejercicio 5:
Código
  1. @Echo OFF
  2.  
  3. Set /A "MAX=9"
  4. Call :Generate_Random %MAX%
  5.  
  6. :Try
  7. Echo Se ha generado un numero aleatorio del 0 al %MAX% | MORE
  8. REM Echo [+] Solucion: %RANDO%
  9. Set /P "Number=Acierta el numero >>"
  10.  
  11. Pause&Exit
  12.  
  13. :Generate_Random
  14. Echo %RANDOM% >NUL
  15. Set /A "Rando=%RANDOM:~-1%"
  16. If %RANDO% GTR %~1 (GOTO :Generate_Random) ELSE (GOTO :EOF)

Saludos.


Título: Re: Ayuda con Scripts Batch.
Publicado por: legolas266 en 25 Febrero 2013, 22:22 pm
Si se me ocurriera algo no dudes que lo expondria para corregir errores, pero es que no se ni por donde empezar. Gracias de todas formas por las pistas y la ayuda.

No sabas de algun tutorial completo en internet acerca de este lenguaje de programacion.. No tengo nada claro la forma de trabajar del comando For /L y de esta variable %~1... no entiendo q es lo que hace..

Quizas comprendiendo mejor su funcionamiento sea capaz de hacer estos ejercicios que ahora mism me resultan muy complicados.

Gracias una vez mas.


Título: Re: Ayuda con Scripts Batch.
Publicado por: Eleкtro en 25 Febrero 2013, 23:32 pm
Definición de "%1" (Argumento):

Citar
    Argumento (o Parámetro)Un argumento es un valor que podemos enviarle a una aplicación CLI o a una Subrutina de nuestro archivo bat para que interactuen con dicho valor.

Un argumento o parámetro es una variable que puede ser recibida por una rutina o subrutina.
Una subrutina usa los valores asignados a sus argumentos para alterar su comportamiento en tiempo de ejecución.

Definición de "FOR" (Búcle): http://es.wikipedia.org/wiki/Bucle_%28programaci%C3%B3n%29





Tutorial extendido de aprendizaje Batch by Elektro H@cker
· 6.1 Variables especiales (o Variables de parámetro) (o Variables de argumentos)
(http://foro.elhacker.net/scripting/tema_bloqueado_hasta_finalizar_el_tuto_tutorial_extendido_de_aprendizaje_batch-t375135.0.html;msg1797955#msg1797955)

http://ss64.com/nt/syntax-args.html

Tutorial extendido de aprendizaje Batch by Elektro H@cker
· 8. Búcles
(http://foro.elhacker.net/scripting/tema_bloqueado_hasta_finalizar_el_tuto_tutorial_extendido_de_aprendizaje_batch-t375135.0.html;msg1798004#msg1798004)

http://ss64.com/nt/for.html


PD: Buscar y encontrar es fácil, deberías usar más el buscador del foro o Google.


Saludos.