2.8 KiB
2.8 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
587d7b86367417b2b2512b3d | Prevent Infinite Loops with a Valid Terminal Condition | 1 | Prevenga los bucles infinitos con una condición de terminal válida |
Description
while
bucle interior loopy()
. ¡NO llames a esta función! función loopy () {Es tarea del programador asegurarse de que finalmente se alcance la condición del terminal, que le indica al programa cuándo salir del código de bucle. Un error es aumentar o disminuir una variable de contador en la dirección incorrecta de la condición del terminal. Otro es restablecer accidentalmente un contador o variable de índice dentro del código de bucle, en lugar de incrementarlo o disminuirlo.
while (verdadero) {
console.log ("Hola, mundo!");
}
}
Instructions
myFunc()
función contiene un bucle infinito debido a que la condición terminal i != 4
Nunca será evaluada como false
(y romper el bucle) - i
aumentará en 2 de cada pasada, y saltar a la derecha durante 4 desde i
es impar para empezar. Fije el operador de comparación en la condición de terminal para que el bucle solo se ejecute para i
menor o igual a 4. Tests
tests:
- text: Su código debe cambiar el operador de comparación en la condición del terminal (la parte media) del bucle <code>for</code> .
testString: 'assert(code.match(/i\s*?<=\s*?4;/g).length == 1, "Your code should change the comparison operator in the terminal condition (the middle part) of the <code>for</code> loop.");'
- text: Su código debe arreglar el operador de comparación en la condición terminal del bucle.
testString: 'assert(!code.match(/i\s*?!=\s*?4;/g), "Your code should fix the comparison operator in the terminal condition of the loop.");'
Challenge Seed
function myFunc() {
for (let i = 1; i != 4; i += 2) {
console.log("Still going!");
}
}
Solution
// solution required