Programa
TP Vacaciones de invierno
Apuntes
Unidad 1 - Dirección de proyectos
Unidad 2 - Bash y Git
Unidad 3 - HTML y CSS
Unidad 4 - JavaScript
Evaluacion Unidad 4 (Resuelta)
Implementar las siguientes funciones en JavaScript.
- Una función que devuelve un array con los primeros n números de Fibonacci. Sea F la sucesión de Fibonacci, F0 = 0 y F1 = 1 se define Fn = Fn-1 + Fn-2. Es decir, a partir del tercer número, cada número es la suma de los dos anteriores. La cantidad de números n es el único argumento de la función.
function fibonacci(n) {
if (n == 0) return null;
let result = [0];
if (n == 1) return result;
result.push(1);
if (n == 2) return result;
for (let i = 2; i < n; i++)
result.push(result[i - 1] + result[i - 2]);
return result;
}
- Una función que recibe tres argumentos de tipo string que son nombres de colores de una resistencia de cuatro bandas. Los argumentos son los dos primeros dígitos y el multiplicador. La función tiene que devolver el valor numérico en Ohms de la resistencia. Los colores en orden del 0 al 9 son: negro, marrón, rojo, naranja, amarillo, verde, azul, violeta, gris y blanco. No se puede usar
if ... else
.
function parseResistanceValue(first, second, multiplier) {
const COLORS = {
black: 0,
brown: 1,
red: 2,
orange: 3,
yellow: 4,
green: 5,
blue: 6,
violet: 7,
grey: 8,
white: 9
};
let value = COLORS[second];
value += COLORS[first] * 10;
value *= Math.pow(10, COLORS[multiplier]);
return value;
}
- Una función que reciba como argumento un año y devuelva verdadero si el año es bisiesto o falso en lo contrario. Un año es bisiesto si es divisible por 4 pero no por 100, al menos que sea divisible por 400.
function isLeap(year) {
if(year % 4 === 0) {
if(year % 100 === 0) {
if(year % 400 === 0) {
return true
}
return false
}
return true
}
return false
}
- Una función que use internamente el método
setInterval(callback, delay)
para mostrar por consola un reloj digital con horas, minutos y segundos.
function clock(h, m, s) {
setInterval(() =>{
s++;
if (s == 60) {
s = 0;
m++;
}
if (m == 60) {
m = 0;
h++;
}
if (h == 24) h = 0;
console.log(`${h}:${m}:${s}`);
}, 1000);
}