Solución

@anibalitoaqui_4d3796c3
·9/4/2026TypeScript
solution.tsTypeScript
function isPrime(value: number): boolean {
  console.log(value)
  if (value < 2) return false
  return value % 4 === 0 ? false : true;
}

// No modificar: necesario para evaluar el resultado.
export { isPrime };
1respuestas
Respuestas
1
@arkzadohace 1deditado

Anibal, tu código está mal, vamos a hacerlo paso a paso, el primer filtro está bien, si el número es menor a 2, retorna falso, ahí bien, pero el comparar el residuo de un número dividido entre 4 que sea 0 está mal, solo por poner algunos ejemplos usando tu lógica: hiciste value % 4 === 0 ? false : true; si reemplazamos el value por ejemplo con el 6.
6 % 4 === 0 ? false : true entonces el residuo de 6 dividido 4 tiene como residuo 2 y 2 es diferente de 0 por lo que la operación da false, pero al ser false retornas true porque en el operador ternario pusiste que la condición verdadera retorne false y la condición falsa retorne true (0 ? false : true;) por lo que tu función dirá que es primo, pero en realidad el 6 no es primo, es compuesto porque es divisible entre 1, 2, 3, 6

Escribir un comentario

Recuerda ser amable. Estás comentando la solución de otra persona. Comparte tu perspectiva de forma constructiva y respetuosa.

Debes iniciar sesión para publicar un comentario.
Markdown