diff --git a/02-JS-I/homework/homework.js b/02-JS-I/homework/homework.js index 3c92ac9cdf..e90331bc20 100644 --- a/02-JS-I/homework/homework.js +++ b/02-JS-I/homework/homework.js @@ -1,23 +1,24 @@ // En estas primeras 6 preguntas, reemplaza `null` por la respuesta // Crea una variable "string", puede contener lo que quieras: -const nuevaString = null; +const nuevaString = hola; // Crea una variable numérica, puede ser cualquier número: -const nuevoNum = null; +const nuevoNum = 1 ; // Crea una variable booleana: -const nuevoBool = null; +const nuevoBool = true; // Resuelve el siguiente problema matemático: const nuevaResta = 10 - null === 5; + false; +// Resuelve el siguiente problema matemático: -// Resuelve el siguiente problema matemático: const nuevaMultiplicacion = 10 * null === 40 ; - +false; // Resuelve el siguiente problema matemático: const nuevoModulo = 21 % 5 === null; - +false; // En los próximos 22 problemas, deberás completar la función. // Todo tu código irá dentro de las llaves de la función. @@ -27,7 +28,8 @@ const nuevoModulo = 21 % 5 === null; function devolverString(str) { // "Return" la string provista: str - // Tu código: + // Tu código: + return str ; } @@ -35,24 +37,27 @@ function suma(x, y) { // "x" e "y" son números // Suma "x" e "y" juntos y devuelve el valor // Tu código: + return x+y ; } function resta(x, y) { // Resta "y" de "x" y devuelve el valor // Tu código: + return y - x; } function multiplica(x, y) { // Multiplica "x" por "y" y devuelve el valor // Tu código: - + return x * y ; } function divide(x, y) { // Divide "x" entre "y" y devuelve el valor // Tu código: + return x / y; } @@ -60,13 +65,24 @@ function sonIguales(x, y) { // Devuelve "true" si "x" e "y" son iguales // De lo contrario, devuelve "false" // Tu código: + if ( x === y) { + return true; + }else { + return false; + } + } -function tienenMismaLongitud(str1, str2) { +function tienenMismaLongitudlength(str1, str2) { // Devuelve "true" si las dos strings tienen la misma longitud // De lo contrario, devuelve "false" // Tu código: + if (str1.length===str2.length){ + return true; + }else{ + return false; + } } @@ -74,6 +90,11 @@ function menosQueNoventa(num) { // Devuelve "true" si el argumento de la función "num" es menor que noventa // De lo contrario, devuelve "false" // Tu código: + if (num < 90){ + return true; + }else{ + return false; + } } @@ -81,12 +102,18 @@ function mayorQueCincuenta(num) { // Devuelve "true" si el argumento de la función "num" es mayor que cincuenta // De lo contrario, devuelve "false" // Tu código: + if (num > 50){ + return true; + }else{ + return false; + } } function obtenerResto(x, y) { // Obten el resto de la división de "x" entre "y" // Tu código: + return x % y ; } @@ -94,6 +121,12 @@ function esPar(num) { // Devuelve "true" si "num" es par // De lo contrario, devuelve "false" // Tu código: + if (num % 2===0){ + return true; + + }else{ + return false; + } } @@ -101,44 +134,50 @@ function esImpar(num) { // Devuelve "true" si "num" es impar // De lo contrario, devuelve "false" // Tu código: - + if (num % 2 !== 0){ + return true; + }else{ + return false; + } } function elevarAlCuadrado(num) { // Devuelve el valor de "num" elevado al cuadrado // ojo: No es raiz cuadrada! // Tu código: - + return num ** 2; } function elevarAlCubo(num) { // Devuelve el valor de "num" elevado al cubo // Tu código: - + return Math.pow (num, 2); } function elevar(num, exponent) { // Devuelve el valor de "num" elevado al exponente dado en "exponent" // Tu código: - + return Math.pow (num,exponent); } function redondearNumero(num) { // Redondea "num" al entero más próximo y devuélvelo // Tu código: + return Math.round(num); } function redondearHaciaArriba(num) { // Redondea "num" hacia arriba (al próximo entero) y devuélvelo // Tu código: - + return Math.ceil(num); } function numeroRandom() { //Generar un número al azar entre 0 y 1 y devolverlo //Pista: investigá qué hace el método Math.random() - + let aleatorio = Math.random (); + return aleatorio; } function esPositivo(numero) { @@ -146,47 +185,48 @@ function esPositivo(numero) { //Si el número es positivo, devolver ---> "Es positivo" //Si el número es negativo, devolver ---> "Es negativo" //Si el número es 0, devuelve false - + return num > 0 ? "Es positivo" : num < 0 ? "Es negativo" : false; } function agregarSimboloExclamacion(str) { // Agrega un símbolo de exclamación al final de la string "str" y devuelve una nueva string // Ejemplo: "hello world" pasaría a ser "hello world!" // Tu código: -} + return str + '!'; +} function combinarNombres(nombre, apellido) { // Devuelve "nombre" y "apellido" combinados en una string y separados por un espacio. // Ejemplo: "Soy", "Henry" -> "Soy Henry" // Tu código: - + return nombre + apellido ; } function obtenerSaludo(nombre) { // Toma la string "nombre" y concatena otras string en la cadena para que tome la siguiente forma: // "Martin" -> "Hola Martin!" // Tu código: - + return 'hola' + nombre ; } function obtenerAreaRectangulo(alto, ancho) { // Retornar el area de un rectángulo teniendo su altura y ancho // Tu código: - + return alto * ancho ; } function retornarPerimetro(lado){ //Escibe una función a la cual reciba el valor del lado de un cuadrado y retorne su perímetro. //Escribe tu código aquí - + return lado * 4 ; } function areaDelTriangulo(base, altura){ //Desarrolle una función que calcule el área de un triángulo. //Escribe tu código aquí - + return (base * altura) / 2; } @@ -194,7 +234,7 @@ function deEuroAdolar(euro){ //Supongamos que 1 euro equivale a 1.20 dólares. Escribe un programa que reciba //como parámetro un número de euros y calcule el cambio en dólares. //Escribe tu código aquí - + return euro * 1.20 ; } @@ -204,7 +244,17 @@ function esVocal(letra){ //que no se puede procesar el dato mediante el mensaje "Dato incorrecto". // Si no es vocal, tambien debe devolver "Dato incorrecto". //Escribe tu código aquí - + if (typeof letra === 'string' && letra.length === 1) { + // Verificamos si la letra es una vocal + if (letra === 'a' || letra === 'e' || letra === 'i' || letra === 'o' || letra === 'u') { + console.log('Es vocal'); + } else { + console.log('No es vocal'); + } + } else { + console.log('Dato incorrecto'); + } + } diff --git a/03-JS-II/homework/homework.js b/03-JS-II/homework/homework.js index e31b0e271c..fe818d9604 100644 --- a/03-JS-II/homework/homework.js +++ b/03-JS-II/homework/homework.js @@ -5,12 +5,26 @@ function obtenerMayor(x, y) { // Devuelve el número más grande // Si son iguales, devuelve cualquiera de los dos // Tu código: + if (x > y) { + return x; + } else if (x == y) { + // Devuelve cualquiera de los dos números + return x; + } else { + return y; + } + } function mayoriaDeEdad(edad) { //Determinar si la persona según su edad puede ingresar a un evento. //Si tiene 18 años ó más, devolver --> "Allowed" //Si es menor, devolver --> "Not allowed" + if(edad >= 18 ){ + return "Allowed"; + }else{ + return "Not allowed "; + } } function conection(status) { @@ -19,6 +33,13 @@ function conection(status) { //Cuando el estado es igual a 2, el usuario está "Away" //De lo contrario, presumimos que el usuario está "Offline" //Devolver el estado de conexión de usuario en cada uno de los casos. + if (status == 1) { + return "Online"; + } else if (status == 2) { + return "Away"; + } else { + return "Offline"; + } } function saludo(idioma) { @@ -28,6 +49,15 @@ function saludo(idioma) { // Si "idioma" es "ingles", devuelve "Hello!" // Si "idioma" no es ninguno de los anteiores o es `undefined` devuelve "Hola!" // Tu código: + if (idioma == "aleman") { + return "Guten Tag!"; + } else if (idioma == "mandarin") { + return "Ni Hao!"; + } else if (idioma == "ingles") { + return "Hello!"; + } else { + return "Hola!"; + } } function colors(color) { @@ -38,18 +68,44 @@ function colors(color) { //En caso que el color recibido sea "orange", devuleve --> "This is orange" //Caso default: devuelve --> "Color not found" //Usar el statement Switch. + switch (color) { + case "blue": + return "This is blue"; + break; + case "red": + return "This is red"; + break; + case "green": + return "This is green"; + break; + case "orange": + return "This is orange"; + break; + default: + return "Color not found"; + } } function esDiezOCinco(numero) { // Devuelve "true" si "numero" es 10 o 5 // De lo contrario, devuelve "false" // Tu código: + if (numero == 10 || numero == 5) { + return true; + } else { + return false; + } } function estaEnRango(numero) { // Devuelve "true" si "numero" es menor que 50 y mayor que 20 // De lo contrario, devuelve "false" // Tu código: + if (numero < 50 && numero > 20) { + return true; + } else { + return false; + } } function esEntero(numero) { @@ -60,13 +116,29 @@ function esEntero(numero) { // De lo contrario, devuelve "false" // Pista: Puedes resolver esto usando `Math.floor` // Tu código: -} + if (Math.floor(numero) == numero) { + return true; + } else { + return false; + } +} function fizzBuzz(numero) { // Si "numero" es divisible entre 3, devuelve "fizz" // Si "numero" es divisible entre 5, devuelve "buzz" // Si "numero" es divisible entre 3 y 5 (ambos), devuelve "fizzbuzz" // De lo contrario, devuelve el numero + if (numero % 3 == 0) { + if (numero % 5 == 0) { + return "fizzbuzz"; + } else { + return "fizz"; + } + } else if (numero % 5 == 0) { + return "buzz"; + } else { + return numero; + } } function operadoresLogicos(num1, num2, num3) { @@ -76,6 +148,19 @@ function operadoresLogicos(num1, num2, num3) { //Si num3 es más grande que num1 y num2, aumentar su valor en 1 y retornar el nuevo valor. //0 no es ni positivo ni negativo. Si alguno de los argumentos es 0, retornar "Error". //Si no se cumplen ninguna de las condiciones anteriores, retornar false. + if (num1 > num2 && num1 > num3 && num1 > 0) { + return "Número 1 es mayor y positivo"; + } else if (num1 < 0 || num2 < 0 || num3 < 0) { + return "Hay negativos"; + } else if (num3 > num1 && num3 > num2) { + num3 += 1; + return num3; + } else if (num1 == 0 || num2 == 0 || num3 == 0) { + return "Error"; + } else { + return false; + } + } function esPrimo(numero) { @@ -84,12 +169,29 @@ function esPrimo(numero) { // Pista: un número primo solo es divisible por sí mismo y por 1 // Pista 2: Puedes resolverlo usando un bucle `for` // Nota: Los números 0 y 1 NO son considerados números primos + if (numero == 0 || numero == 1) { + return false; + } + + for (let i = 2; i < numero; i++) { + if (numero % i == 0) { + return false; + } + } + + return true; + } function esVerdadero(valor){ //Escribe una función que reciba un valor booleano y retorne “Soy verdadero” //si su valor es true y “Soy falso” si su valor es false. //Escribe tu código aquí + if (valor == true) { + return "Soy verdadero"; + } else { + return "Soy falso"; + } } @@ -97,12 +199,21 @@ function tablaDelSeis(){ //Escribe una función que muestre la tabla de multiplicar del 6 (del 0 al 60). //La función devuelve un array con los resultados de la tabla de multiplicar del 6 en orden creciente. //Escribe tu código aquí + const resultados = []; + + for (let i = 0; i <= 60; i++) { + resultados.push(i * 6); + } + + return resultados; + } function tieneTresDigitos(numero){ //Leer un número entero y retornar true si tiene 3 dígitos. Caso contrario, retorna false. //Escribe tu código aquí + return numero.toString().length == 3; } @@ -110,6 +221,15 @@ function doWhile(numero) { //Implementar una función tal que vaya aumentando el valor recibido en 5 hasta un límite de 8 veces //Retornar el valor final. //Usar el bucle do ... while. + let contador = 0; + + do { + valor += 5; + contador++; + } while (contador < 8); + + return valor; + } diff --git a/04-JS-III/homework/homework.js b/04-JS-III/homework/homework.js index c517fed2be..09dc38b10d 100644 --- a/04-JS-III/homework/homework.js +++ b/04-JS-III/homework/homework.js @@ -2,19 +2,22 @@ function devolverPrimerElemento(array) { // Devuelve el primer elemento de un array (pasado por parametro) - // Tu código: + // Tu código: + return array[0]; } function devolverUltimoElemento(array) { // Devuelve el último elemento de un array // Tu código: + return array[array.length - 1]; } function obtenerLargoDelArray(array) { // Devuelve el largo de un array // Tu código: + return array.length; } @@ -23,6 +26,12 @@ function incrementarPorUno(array) { // Aumenta cada entero por 1 // y devuelve el array // Tu código: + for (let i = 0; i < array.length; i++) { + array[i]++; + } + + return array; + } @@ -30,6 +39,8 @@ function agregarItemAlFinalDelArray(array, elemento) { // Añade el "elemento" al final del array // y devuelve el array // Tu código: + array.push(elemento); + return array; } @@ -38,6 +49,8 @@ function agregarItemAlComienzoDelArray(array, elemento) { // y devuelve el array // Pista: usa el método `.unshift` // Tu código: + array.unshift(elemento); + return array; } @@ -47,6 +60,7 @@ function dePalabrasAFrase(palabras) { // con espacios entre cada palabra // Ejemplo: ['Hello', 'world!'] -> 'Hello world!' // Tu código: + return palabras.join(" "); } @@ -54,6 +68,7 @@ function arrayContiene(array, elemento) { // Comprueba si el elemento existe dentro de "array" // Devuelve "true" si está, o "false" si no está // Tu código: + return array.includes(elemento); } @@ -61,6 +76,14 @@ function agregarNumeros(numeros) { // "numeros" debe ser un arreglo de enteros (int/integers) // Suma todos los enteros y devuelve el valor // Tu código: + let suma = 0; + + for (let i = 0; i < numeros.length; i++) { + suma += numeros[i]; + } + + return suma; + } @@ -68,6 +91,13 @@ function promedioResultadosTest(resultadosTest) { // "resultadosTest" debe ser una matriz de enteros (int/integers) // Itera (en un bucle) los elementos del array, calcula y devuelve el promedio de puntajes // Tu código: + let suma = 0; + + for (let i = 0; i < resultadosTest.length; i++) { + suma += resultadosTest[i]; + } + + return suma / resultadosTest.length; } @@ -75,6 +105,7 @@ function numeroMasGrande(numeros) { // "numeros" debe ser una matriz de enteros (int/integers) // Devuelve el número más grande // Tu código: + return Math.max(...numeros); } @@ -82,13 +113,34 @@ function multiplicarArgumentos() { // Usa la palabra clave `arguments` para multiplicar todos los argumentos y devolver el producto   // Si no se pasan argumentos devuelve 0. Si se pasa un argumento, simplemente devuélvelo // Escribe tu código aquí: + if (arguments.length === 0) { + return 0; + } else if (arguments.length === 1) { + return arguments[0]; + } else { + let producto = 1; + + for (let i = 0; i < arguments.length; i++) { + producto *= arguments[i]; + } + + return producto; + } } function cuentoElementos(arreglo){ //Realiza una función que retorne la cantidad de los elementos del arreglo cuyo valor es mayor a 18. //Escribe tu código aquí + let contador = 0; + + for (let i = 0; i < elementos.length; i++) { + if (elementos[i] > 18) { + contador++; + } + } + return contador; } @@ -97,7 +149,11 @@ function diaDeLaSemana(numeroDeDia) { //Realiza una función que dado el número del día de la semana, retorne: Es fin de semana //si el día corresponde a Sábado o Domingo y “Es dia Laboral” en caso contrario. //Escribe tu código aquí - + if (numeroDeDia === 6 || numeroDeDia === 7) { + return "Es fin de semana"; + } else { + return "Es día laboral"; + } } @@ -105,7 +161,7 @@ function empiezaConNueve(n) { //Desarrolle una función que recibe como parámetro un número entero n. Debe retornar true si el entero //inicia con 9 y false en otro caso. //Escribe tu código aquí - + return n.toString().startsWith("9"); } @@ -113,7 +169,13 @@ function todosIguales(arreglo) { //Escriba la función todosIguales, que indique si todos los elementos de un arreglo son iguales: //retornar true, caso contrario retornar false. //Escribe tu código aquí - + for (let i = 0; i < elementos.length - 1; i++) { + if (elementos[i] !== elementos[i + 1]) { + return false; + } + } + + return true; } @@ -122,6 +184,17 @@ function mesesDelAño(array) { // "Enero", "Marzo" y "Noviembre", guardarlo en nuevo array y retornarlo. //Si alguno de los meses no está, devolver: "No se encontraron los meses pedidos" // Tu código: + const arrayBuscados = ["Enero", "Marzo", "Noviembre"]; + const resultado = []; + + for (let i = 0; i < array.length; i++) { + const mes = array[i]; + if (arrayBuscados.includes(mes)) { + resultado.push(mes); + } + } + + return resultado.length === 0 ? "No se encontraron los meses pedidos" : resultado; } @@ -129,6 +202,16 @@ function mayorACien(array) { //La función recibe un array con enteros entre 0 y 200. Recorrer el array y guardar en un nuevo array sólo los //valores mayores a 100 (no incluye el 100). Finalmente devolver el nuevo array. // Tu código: + const resultado = []; + + for (let i = 0; i < array.length; i++) { + const num = array[i]; + if (num > 100) { + resultado.push(num); + } + } + + return resultado; } @@ -140,6 +223,20 @@ function breakStatement(numero) { //devolver: "Se interrumpió la ejecución" //Pista: usá el statement 'break' // Tu código: + const resultado = []; + let iteraciones = 0; + + while (iteraciones < 10) { + if (numero === iteraciones) { + return "Se interrumpió la ejecución"; + } + + resultado.push(numero); + numero += 2; + iteraciones++; + } + + return resultado; } @@ -150,6 +247,21 @@ function continueStatement(numero) { //Cuando el número de iteraciones alcance el valor 5, no se suma en ese caso y se continua con la siguiente iteración //Pista: usá el statement 'continue' // Tu código: + const resultado = []; + let iteraciones = 0; + + while (iteraciones < 10) { + if (iteraciones === 5) { + iteraciones++; + continue; + } + + resultado.push(numero); + numero += 2; + iteraciones++; + } + + return resultado; }