Solución
solution.tsTypeScript
function logicGate(firstValue: boolean, secondValue: boolean, gate: "AND" | "OR" | "XOR" | "NAND"): boolean {
const operation = {
AND: (a: boolean, b: boolean): boolean => !!(+a & +b),
OR: (a: boolean, b: boolean): boolean => !!(+a | +b),
XOR: (a: boolean, b: boolean): boolean => !!(+a ^ +b),
NAND: (a: boolean, b: boolean): boolean => !operation.AND(a,b),
}
return operation[gate](firstValue, secondValue)
}
// No modificar: necesario para evaluar el resultado.
export { logicGate };0respuestas