Ejercicios Básicos de Iniciación JavaScript

Ejercicios de Iniciación JavaScript

Ejercicios de Iniciación JavaScript

En este tutorial vamos a hacer unos ejercicios básicos para comenzar a programar en JavaScript.

Para comenzar a programar en JavaScript sólo necesitamos un editor de texto para escribir el código y un navegador web para ejecutarlo. 

Debemos crear un archivo html por cada ejercicio y el código de los ejemplos debe ir entre las etiquetas de <body></body>.

Ejemplo:

<!DOCTYPE html>
<html lang="es">
<head>
	<title>título</title>
	<meta charset="utf-8" />
</head>
<body>
	<script>
		//AQUÍ VA EL CÓDIGO JAVASCRIPT
	</script>
</body>
</html>

Ejercicios

1. Pide la edad y si es mayor de 18 años indica que ya puede conducir.
Solución
<script>
//PIDE POR TECLADO LA EDAD
var edad = prompt("Introduce tu edad");
//COMPRUEBA QUE LO INTRODUCIDO ES UN NÚMERO
if (Number(edad) == edad) {
	//SI ES MAYOR DE 18
	if (edad > 18) {
		//IMPRIME EN PANTALLA EL MENSAJE
		document.write("Puedes conducir");
	}
}
//SINÓ
else {
	//MUESTRA UN MENSAJE
	alert("Introduce un numero válido");
}
</script>

2. Pide una nota (número). Muestra la calificación según la nota:

  • 0-3: Muy deficiente
  • 3-5: Insuficiente
  • 5-6: Suficiente
  • 6-7: Bien
  • 7-9: Notable
  • 9-10: Sobresaliente
Solución
<script>
//BUCLE PARA QUE PERMITA INTRODUCIR MÁS DE UNA NOTA
do {
	//PIDE UNA NOTA POR TECLADO Y LA GUARDA EN LA VARIABLE nota
	var nota = prompt("Introduce tu nota");
	//SI SE INTRODUJO UN NÚMERO
	if (Number(nota) == nota) {
		//SI LA NOTA ES ENTRE 0 Y 10 COMPRUEBA EL RANGO Y DA UN MENSAJE
		if (nota > 0 && nota <= 10) {
			if (nota < 3) {
				alert("Muy deficiente");
			}
			else if (nota < 5) {
				alert("Insuficiete");
			}
			else if (nota < 6) {
				alert("Suficiente");
			}
			else if (nota < 7) {
				alert("Bien");
			}
			else if (nota < 9) {
				alert("Notable"); 5
			}
			else if (nota >= 9) {
				alert("Sobresaliente");
			}
		}
		//SI LA NOTA NO ES ENTRE 0 Y 10
		else {
			alert("Nota erronea");
		}
	}
	//SI LA NOTA INTRODUCIDA NO ES UN NÚMERO
	else {
		//SI SE HA PULSADO ACEPTAR SIN INTRODUCIR NADA
		if (nota != undefined) {	//No es Undefined cuando se pulsa aceptar.
			alert("Introduce un numero valido");
		}
	}
//EL BUCLE VUELVE ARRIBA MIENTRAS NO SE HAYA PULSADO CANCELAR
} while (nota != undefined);	//Undefined es cuando se pulsa Cancelar.
</script>

3. Realiza un script que pida cadenas de texto  hasta que se pulse “cancelar”. Al salir con “cancelar” deben mostrarse todas las cadenas concatenadas con un guión -.

Solución

<script>
 //DECLARAMOS UNA VARIABLE DONDE VAMOS A CONCATENAR LAS CADENAS
 var resultado = "";
//BUCLE DO WHILE PARA INTRODUCIR VARIAS CADENAS
do {
    //PEDIMOS LA CADENA POR TECLADO
    var cadena = prompt("Introduce una cadena");
    //SI LA VARIABLE RESULTADO ESTÁ VACÍA
    if (resultado == "") {
        //CONCATENAMOS SIN UTILIZAR GUIÓN
        resultado = resultado + cadena;
    }
    //SINÓ
    else {
        //CONCATENAMOS CON GUIÓN
        resultado = resultado + "-" + cadena;
    }
    //MIENTRAS SE PULSE ACEPTAR EN EL MENSAJE EMERGENTE CONFIRM
} while (confirm("Desea seguir?"));
//SI SE PULSÓ CANCELAR IMPRIMIMOS EL RESULTADO
document.write(resultado);
</script>

4. Realiza un script que pida números hasta que se pulse “cancelar”. Si no es un número deberá indicarse con un «alert» y seguir pidiendo. Al salir con “cancelar” deberá indicarse la suma total de los números introducidos.

Solución

<script>
//DECLARAMOS LA VARIABLE SUMA
var suma = 0;
//BUCLE DO WHILE PARA INTRODUCIR VARIOS
do {
    //PEDIMOS EL NÚMERO POR TECLADO
    var numero = prompt("Introduce un numero");
    //COMPROBAMOS QUE LO INTRODUCIDO ES UN NÚMERO
    if (Number(numero) == numero) {
        //CONVERTIMOS EL NÚMERO EN INTEGER (POR SI ACASO)
        numero = Number(numero);
        //SUMAMOS LO QUE HAY EN LA VARIABLE SUMA CON ESE NÚMERO
        suma = suma + numero;
    }
    //SI LO INTRODUCIDO NO ES UN NÚMERO
    else {
    //SI SE PULSÓ ACEPTAR SIN PONER UN NÚMERO VÁLIDO
        if (numero != undefined) {
            alert(numero + " No es un numero");
        }
    }
//VOLVEMOS ARRIBA MIENTRAS NO SE PULSE CANCELAR
} while (numero != undefined);
//SI SE PULSÓ CANCELAR SALE DEL BUCLE E IMPRIME EL RESULTADO
document.write(suma);
</script>

5. Realizar una página con un script que calcule el valor de la letra de un número de DNI (Documento nacional de indentidad).

El algoritmo para calcular la letra del dni es el siguiente :

  • El número debe ser entre 0 y 99999999
  • Debemos calcular el resto de la división entera entre el número y el número 23.
  • Según el resultado, de 0 a 22, le corresponderá una letra de las siguientes:  (T, R, W, A, G, M, Y, F, P, D, X, B, N, J, Z, S, Q, V, H, L, C, K, E)
  • Si lo introducido no es un número deberá indicarse con un alert y volver a preguntar.
  • Deberá de repetirse el proceso hasta que el usuario pulse «cancelar».
Solución
<script>
//DECLARAMOS LAS VARIABLES QUE VAMOS A USAR
var resto = 0;
var letra = "";
do {
    var numero = prompt("Introduce tu dni");
    if (Number(numero) == numero) {
        numero = Number(numero);
        if (numero >= 0 && numero <= 99999999) {
            //CALCULAMOS EL RESTO DE DIVIDIR EL NÚMERO ENTRE 23
            resto = numero % 23;
            //SEGÚN SEA EL RESTO ASIGNAMOS UN VALOR A LA VARIABLE LETRA
            switch (resto) {
                case 0:
                    letra = "T";
                    break;
                case 1:
                    letra = "R";
                    break;
                case 2:
                    letra = "W";
                    break;
                case 3:
                    letra = "A";
                    break;
                case 4:
                    letra = "G";
                    break;
                case 5:
                    letra = "M";
                    break;
                case 6:
                    letra = "Y";
                    break;
                case 7:
                    letra = "F";
                    break;
                case 8:
                    letra = "P";
                    break;
                case 9:
                    letra = "D";
                    break;
                case 10:
                    letra = "X";
                    break;
                case 11:
                    letra = "B";
                    break;
                case 12:
                    letra = "N";
                    break;
                case 13:
                    letra = "J";
                    break;
                case 14:
                    letra = "Z";
                    break;
                case 15:
                    letra = "S";
                    break;
                case 16:
                    letra = "Q";
                    break;
                case 17:
                    letra = "V";
                    break;
                case 18:
                    letra = "H";
                    break;
                case 19:
                    letra = "L";
                    break;
                case 20:
                    letra = "C";
                    break;
                case 21:
                    letra = "K";
                    break;
                case 22:
                    letra = "E";
                    break;
                default:
                //SI NO ES UN NÚMERO ENTRE 0 Y 22 MOSTRAMOS UN ERROR
                    alert("Numero erroneo");
            }
        }
        //MOSTRAMOS MENSAJE CON EL DNI Y LA LETRA OBTENIDA
        alert("Numero: " + numero + ", Letra: " + letra);
    }
    //SI NO ES UN NÚMERO
    else {
        //SI SE PULSÓ ACEPTAR SIN PONER UN NÚMERO
        if (numero != undefined) {
            alert(numero + " No es un numero");
        }
    }
//MIENTRAS NO SE PULSE CANCELAR VUELVE ARRIBA
} while (numero != undefined);
</script>

Más ejercicios JavaScript

Si te ha gustado no olvides compartir en redes sociales.

Espero que te haya servido. Cualquier duda deja un comentario. Un saludo

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Translate »
Ir a la barra de herramientas