aulatecnic

 

 

Ejercicios con bucles

 

 

calcular la letra de un DNI

(Mostrar el valor de un array)

utiliza el condicional If .. Else

bucle1

El cálculo de la letra del Documento Nacional de Identidad (DNI) es un proceso matemático sencillo que se basa en obtener el resto de la división entera del número de DNI y el número 23. A partir del resto de la división, se obtiene la letra seleccionándola dentro de un array de letras.

El array de letras es:

var letras = ['T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E', 'T'];

Por tanto si el resto de la división es 0, la letra del DNI es la T y si el resto es 3 la letra es la A. Con estos datos, elaborar un pequeño script que:

  1. Almacene en una variable el número de DNI indicado por el usuario y en otra variable la letra del DNI que se ha indicado. (Pista: si se quiere pedir directamente al usuario que indique su número, se puede utilizar la función prompt())
  2. En primer lugar (y en una sola instrucción) se debe comprobar si el número es menor que 0 o mayor que 99999999. Si ese es el caso, se muestra un mensaje al usuario indicando que el número proporcionado no es válido y el programa no muestra más mensajes.
  3. Si el número es válido, se calcula la letra que le corresponde según el método explicado anteriormente.
  4. Una vez calculada la letra, se debe mostrar con el método de escritura deseado

 

Mostrar datos uno a uno

Bucle FOR

bucle2

Crea una función que pida el nombre al usuario y usando un bucle for y el método charAt, muestre cada una de las letras que componen la entrada. Por ejemplo si se introduce “Teresa” debe mostrar:
letra 1: T letra 2: e letra 3:r letra 4:e letra 5:s letra 6:a

En este bucle utilizamos la propiedad length, nos devuelve el número de caracteres de una cadena de texto. Esto permite al bucle for acabar justo al finalizar el texto.
for (i = 0; i < texto.length; i++)

La propiedad de un texto que permite mostrar un carácter es charAt. Ejemplo texto.charAt(i);

Ejemplo de un bucle anidado:

<SCRIPT>
for (i = 1; i <= 6; i++) {
  document.write("Ficha: ");
    for (j = 1; j <= i; j++) {
      document.write("|" + i + ":" + j + "| ");
     }
document.write("<BR>");
}
</SCRIPT>

 

 

 Bucle While

 

bucle3

La condición se evalúa antes de cada vuelta del bucle. Si la condición es verdadera, se ejecuta el bloque código del while. Llegado al final del bloque, la ejecución vuelve al  while  y se vuelve a evaluar la condición.

En caso de que la condición sea falsa, el bloque de código dentro del  while  no se ejecuta y el flujo del programa continúa en la línea después del  while

Escribe un programa que muestre por pantalla una tabla de multiplicar.

En primer lugar se le pedirá al usuario que introduzca un número entre 2 y 10. Si el número no está entre estos dos valores, se le seguirá pidiendo hasta que introduzca el valor correcto. Una vez haya introducido un valor entre 2 y 10, se mostrará por consola la tabla de multiplicar del número elegido.

15-1
 

 

 

Bucle While

bucle4

Escribe un programa que muestre por pantalla tres intentos para entrar un código correcto

En primer lugar se le pedirá al usuario que introduzca su nombre y una contraseña.

Si el número de intentos supera el tres le hará fuera del programa, si escribe correctamente la contraseña le dirá que está dentro

 

 

Bucle do... while

bucle5

El bucle do … while es muy similar al bucle while. La diferencia radica en cuándo se evalúa la condición de salida del ciclo. En el bucle while esta evaluación se realiza antes de entrar al ciclo, lo que significa que el bucle puede no llegar ejecutarse. En cambio, en un bucle do … while, la evaluación se hace después de la primera ejecución del ciclo, lo que significa que el bucle obligatoriamente se ejecuta al menos en una ocasión. Después de la condición del while debemos escribir punto y coma. Por ejemplo while (contador < 10);

do { msg = msg + '\t Contando... '+ (contador+1) + '\n';
contador +=1;
} while (contador < 10);

 

 

Bucle do... while

bucle6

Escribe un programa que pida datos numéricos al usuario

En primer lugar utiliza el bucle do...while para hacer que mediante prompt se pida un número al usuario y se recoja un dato numérico hasta que nos dé el número 5.

El programa no debe parar de pedir el número hasta la condición del bucle.

 

 

 

Bucle do... while

bucle7

Escribe un programa que nos diga si cada número que tecleemos es positivo o negativo, y que pare cuando tecleemos el número 0