Ejercicios de iniciación JavaScript 1
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>
Ejercicio 1
Vamos a empezar con un sencillo ejercicio para practicar con el método prompt para pedir datos por teclado el condicional if
Pide la edad y si es mayor de 18 años indica que ya puede conducir.
Solución
// 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");
}
}
// SI NÓ
else {
// MUESTRA UN MENSAJE
alert("Introduce un numero válido");
}
Ejercicio 2
En el siguiente ejercicio vamos a practicar con el bucle do while para que el código se ejecute una y otra vez hasta que el usuario decida parar
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
// 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.
Ejercicio 3
En el siguiente ejercicio vamos a practicar la concatenación de strings y el bucle do while
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
// 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);
Ejercicio 4
En el siguiente ejercicio vamos a practicar el bucle do while, una validación de números sencilla y la operación de suma
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
// 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);
Ejercicio 5
En el siguiente ejercicio repasaremos el uso del condicional switch y la validación de la letra del DNI
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
// 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);
Más ejercicios de JavaScript
Ejercicios de iniciación JavaScript 2
Ejercicios de iniciación JavaScript 3
Ejercicios de iniciación JavaScript 4
Ejercicios de iniciación JavaScript 5
Ejercicios de iniciación JavaScript 6
Ejercicios básicos de fechas JavaScript
Ejercicios para aprender JavaScript 1
Me gusta esto:
Me gusta Cargando...
Relacionado
2 ideas sobre “Ejercicios de iniciación JavaScript 1”
Una observación que noté al hacer la prueba con el código original del segundo ejercicio es que hay un error al momento de determinar el valor que pueden tener las notas en el condicional, puesto que no permite que el valor sea de 0, pero en los condicionales de más abajo, al momento de solicitar el valor de la nota para determinar el mensaje que se mostrará si que se admite el cero. La solución sería simplemente cambiar el operador, de manera que quede de la siguiente forma:
if(nota >= 0 && nota <= 10){
//condicionales para los mensajes
}
al no tener la posibilidad de que la nota sea igual a 0, no se permite introducir dicho valor. Tambien sería una solución determinar que el primer mensaje fuese válido para un número entre 1 y 3 y no entre 0 y 3
hola!En el ejercicio del DNI, si metes un número mas grande de 99999999, te hace el resto igual. No controla si metes un número que no este en ese rango.