Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

228
Vistas
¿Cómo solucionar este error en Javascript que me sigue saliendo?

Resolví el problema. Los casos de prueba seguían fallando probablemente porque había que implementar un bloque try catch. Me olvidé por completo de eso. Los casos de prueba funcionaron cuando agregué el bloque try catch. Gracias por todas las sugerencias. Declaración del problema: necesito diseñar un formulario html simple que tome un límite como entrada y muestre el primer número dado de la serie de Fibonacci. por ej. si se da 5 como entrada, muestra: 0 1 1 2 3 si se da 8 como entrada, muestra: 0 1 1 2 3 5 8 13 Pero sigo recibiendo este error:

 testFiboForNonZeroPositiveInput: Check for the logic and check if the correct output is displayed in div with id 'result' testFiboForZeroInput: Check for the logic and check if the correct output is displayed in div with id 'result'

CASO DE PRUEBA FALLIDO

Aquí está mi código:

 function getFibonacci(){ var fib=document.getElementById("fibo").value; var text; var arr=[]; if (fib.length===0){ text="Please, specify a number."; document.getElementById("result").innerHTML = text; } else if (fib<0){ text="Please, specify a positive number."; document.getElementById("result").innerHTML = text; } else{ var n1 = 0, n2 = 1, nextTerm, i; for (i = 1; i <= fib; i++) { arr.push(n1); nextTerm = n1 + n2; n1 = n2; n2 = nextTerm; } var newStr = arr.join(' ').trim() document.getElementById("result").innerHTML=newStr; } return false; }
 <!DOCTYPE html> <html lang="en"> <head> <title>Fibonacci Series</title> <script src="script.js"></script> </head> <body> <form onsubmit=" return getFibonacci()"> <label for="Enter the number to get a fibonacci">Enter the number to get a fibonacci</label> <input type="number" id="fibo" name="fibo"><br> <input type="submit" value="Get Fibonacci Numbers" id="fibobtn"> <div id="result"></div> </form> </body> </html>

Todo parece funcionar bien y obtengo la serie de Fibonacci y los demás mensajes según sea necesario, pero mis casos de prueba fallan debido a este error. Por favor, dígame qué hacer para solucionar este problema.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Hice estos cambios en el código y los casos de prueba funcionaron: (Se agregó un bloque try catch requerido)

 function getFibonacci(){ try{ var fib=document.getElementById("fibo").value; var text; var arr=[]; if (fib.length===0){ text="Please, specify a number."; document.getElementById("result").innerHTML = text; } else if (fib<0){ text="Please, specify a positive number."; document.getElementById("result").innerHTML = text; } else if(fib>0){ var num1=0; var num2=1; var nextterm; var i=0; for (i = 0; i < fib; i++) { arr.push(num1); nextterm=num1+num2; num1=num2; num2=nextterm; } var newStr = arr.join(' '); document.getElementById("result").innerHTML=newStr; }else { text="0"; document.getElementById("result").innerHTML = text; } } catch(err){ document.getElementById("result").innerHTML=err; } return false; }
about 4 years ago · Juan Pablo Isaza Denunciar

0

Un atributo for en la label debe hacer referencia a una identificación.

 <input type="number" id="fibo" name="fibo"> <label for="fibo">Enter the number to get a fibonacci</label>

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda