// Variables (tipadas o no) // Estructuras de control: if y switch // Bucles: while y for // Función: agrupar código con el fin de reutilizarlo // Podemos utilizar parámetros para que la reutilización se flexible // Nos permiten devolver valores function saludo (nombre) { console.log('Hola ' + nombre + ' ¿Qué tal estás?') } function arbolNumero (numero) { for (let i = 1; i <= numero; i++) { let cadena = '' for (let j = 1; j <= i; j++) { cadena += i } console.log(cadena) } } function suma (valor1, valor2) { console.log(valor1 + valor2) } function mayorEdad (nombre, edad) { // Si es mayor de edad ponga "Hola nombre puedes pasar" // Si es menor de edad ponga "Hola nombre NO puedes pasar" if (edad < 18) { console.log('Hola ' + nombre + ' NO puedes pasar') } else { console.log('Hola ' + nombre + ' puedes pasar') } } saludo('Ana') // Pasando un valor a un parámetro de la función arbolNumero(8) suma(10, 30) mayorEdad('Ana', 20) // Hola Ana puedes pasar mayorEdad('Eva', 10) // Hola Eva NO puedes pasar mayorEdad('Pep', 18) // Hola Pep puedes pasar const nombre = prompt('Dime tu nombre') let edad = parseFloat(prompt('Dime tu edad')) mayorEdad(nombre, edad) // Una función no debería interactuar con el entorno // Sólo recibir parámetros y devolver resultados // Una función debería ser una caja negra a la que se le pasan valores y devuelve resultados function sumaMal (valor1, valor2) { console.log(valor1 + valor2) } function suma (valor1, valor2) { return (valor1 + valor2) } function factorial (numero) { // La multiplicación de todos los números hasta el número que nos pasan // EJ: factorial de 5 es 1*2*3*4*5 let resultado = 1 for (let i = 2; i <= numero; i++) { resultado *= i } return resultado } function mayor (a, b) { // Nos devuelve el número mayor if (a > b) { return a } else { return b } } function otroMayor (a, b) { let mayor = a if (b > a) { mayor = b } return mayor } console.log(factorial(5)) console.log(factorial(8)) const res = factorial(7) console.log(mayor(2, 20)) // 20 console.log(mayor(2, 2)) // 2 console.log(mayor(29, 20)) // 29 console.log(otroMayor(2, 20)) // 20 console.log(otroMayor(2, 2)) // 2 console.log(otroMayor(29, 20)) // 29 function mayor3 (a, b, c) { let mayor = a if (b > mayor) { mayor = b } if (c > mayor) { mayor = c } return mayor } function sumarHasta (numero) { // Devuelva la suma de todos los números hasta el número que me envíen let suma = 0 for (let i = 1; i <= numero; i++) { suma += i } return suma } console.log(mayor3(1, 2, 3)) console.log(mayor3(2, 3, 1)) console.log(mayor3(3, 1, 2)) console.log(mayor3(3, 1, 1)) console.log(mayor3(3, 3, 1)) console.log(sumarHasta(3)) // 6 console.log(sumarHasta(100)) // 5050 // 6.- Escribir un programa que le pida al usuario un número // nos cuente la cantidad de multiplos de ese número menores de 100 function multiplos (numero, limite) { // Cuenta el número de múltiplos que hay ente 1 y el límite // Se contar: ++ // Se recorrer los números entre y el límite: for (let i=1;i<=limite) // Se si un número es múltiplo de otro: Sí, con el % let cuenta = 0 for (let i = 0; i < limite; i++) { if (i % numero == 0) { cuenta++ } } return cuenta } const num = parseFloat(prompt('Dime el múltiplo')) const lim = parseFloat(prompt('Dime el límite')) const total = multiplos(num, lim) console.log('El número de múltiplos de ' + num + ' desde el 1 hasta ' + lim + ' es ' + total) console.log(multiplos(5, 30)) console.log(multiplos(num * 5, 30 + lim * 2))