<!DOCTYPE ...> en la primera línea, donde la parte " ... " es la versión de HTML. Para HTML5, utiliza <!DOCTYPE html> . El ! y el DOCTYPE mayúsculas es importante, especialmente para los navegadores más antiguos. El html no distingue entre mayúsculas y minúsculas. A continuación, el resto de su código HTML debe estar envuelto en etiquetas html . La apertura <html> va directamente debajo de la línea <!DOCTYPE html> , y el cierre </html> va al final de la página. Aquí hay un ejemplo de la estructura de la página: <! DOCTYPE html>
<html>
<! - Su código HTML va aquí ->
</html>
<!DOCTYPE ...> en la primera línea, donde la parte ... es la versión de HTML. Para HTML5, utiliza <!DOCTYPE html> . El ! y el DOCTYPE mayúsculas es importante, especialmente para los navegadores más antiguos. El html no distingue entre mayúsculas y minúsculas. A continuación, el resto de su código HTML debe estar envuelto en etiquetas html . La apertura <html> va directamente debajo de la línea <!DOCTYPE html> , y el cierre </html> va al final de la página. Aquí hay un ejemplo de la estructura de la página: <! DOCTYPE html>
<html>
<! - Su código HTML va aquí ->
</html>
DOCTYPE para HTML5 en la parte superior del documento HTML en blanco en el editor de código. Debajo de él, agregue etiquetas html apertura y cierre, que envuelven un elemento h1 . El encabezado puede incluir cualquier texto. do...while " porque primero " do " una pasada del código dentro del bucle sin importar qué, y luego se ejecuta " while " se cumple una condición específica y se detiene una vez que esa condición ya no es verdadera. Veamos un ejemplo. var ourArray = [];Esto se comporta como se esperaría con cualquier otro tipo de bucle, y la matriz resultante se verá como
var i = 0;
hacer {
nuestroArray.push (i);
i ++;
} while (i <5);
[0, 1, 2, 3, 4] . Sin embargo, lo que hace do...while diferente de otros bucles es cómo se comporta cuando la condición falla en la primera comprobación. Veamos esto en acción. Aquí hay un bucle while común que ejecutará el código en el bucle siempre y cuando i < 5 . var ourArray = [];Observe que inicializamos el valor de
var i = 5;
mientras (i <5) {
nuestroArray.push (i);
i ++;
}
i en 5. Cuando ejecutamos la siguiente línea, notamos que i no es menor que 5. Por lo tanto, no ejecutamos el código dentro del bucle. El resultado es que ourArray no agregará nada, por lo que aún se verá así [] cuando todo el código del ejemplo anterior termine de ejecutarse. Ahora, eche un vistazo a un do...while loop. var ourArray = [];En este caso, inicializamos el valor de
var i = 5;
hacer {
nuestroArray.push (i);
i ++;
} while (i <5);
i como 5, tal como hicimos con el bucle while. Cuando llegamos a la siguiente línea, no hay comprobación del valor de i , por lo que vamos al código dentro de las llaves y lo ejecutamos. Agregaremos un elemento a la matriz e incrementaremos i antes de llegar a la verificación de condición. Entonces, cuando se llega a comprobar si i < 5 ver que i es ahora de 6 años, que no pasa la comprobación condicional. Así que salimos del bucle y estamos listos. Al final del ejemplo anterior, el valor de ourArray es [5] . Esencialmente, un bucle do...while while garantiza que el código dentro del bucle se ejecute al menos una vez. Intentemos obtener un bucle do...while while para que funcione presionando valores en una matriz. do...while porque primero do una pasada del código dentro del bucle sin importar qué, y luego se ejecuta while se cumple una condición específica y se detiene una vez que esa condición ya no es verdadera. Veamos un ejemplo. var ourArray = [];Esto se comporta como se esperaría con cualquier otro tipo de bucle, y la matriz resultante se verá como
var i = 0;
hacer {
nuestroArray.push (i);
i ++;
} while (i <5);
[0, 1, 2, 3, 4] . Sin embargo, lo que hace do...while diferente de otros bucles es cómo se comporta cuando la condición falla en la primera comprobación. Veamos esto en acción. Aquí hay un bucle while común que ejecutará el código en el bucle siempre y cuando i < 5 . var ourArray = [];Observe que inicializamos el valor de
var i = 5;
mientras (i <5) {
nuestroArray.push (i);
i ++;
}
i en 5. Cuando ejecutamos la siguiente línea, notamos que i no es menor que 5. Por lo tanto, no ejecutamos el código dentro del bucle. El resultado es que ourArray no agregará nada, por lo que aún se verá así [] cuando todo el código del ejemplo anterior termine de ejecutarse. Ahora, eche un vistazo a un do...while loop. var ourArray = [];En este caso, inicializamos el valor de
var i = 5;
hacer {
nuestroArray.push (i);
i ++;
} while (i <5);
i como 5, tal como hicimos con el bucle while. Cuando llegamos a la siguiente línea, no hay comprobación del valor de i , por lo que vamos al código dentro de las llaves y lo ejecutamos. Agregaremos un elemento a la matriz e incrementaremos i antes de llegar a la verificación de condición. Entonces, cuando se llega a comprobar si i < 5 ver que i es ahora de 6 años, que no pasa la comprobación condicional. Así que salimos del bucle y estamos listos. Al final del ejemplo anterior, el valor de ourArray es [5] . Esencialmente, un bucle do...while while garantiza que el código dentro del bucle se ejecute al menos una vez. Intentemos obtener un bucle do...while while para que funcione presionando valores en una matriz. while de bucle en el código a un do...while bucle de modo que el bucle empujará el número 10 a myArray , y i será igual a 11 cuando el código termina de ejecutarse. for loop " porque se ejecuta "por" un número específico de veces. Para los bucles se declaran con tres expresiones opcionales separadas por punto y coma: for ([initialization]; [condition]; [final-expression]) La instrucción de initialization se ejecuta una sola vez antes de que comience el bucle. Normalmente se utiliza para definir y configurar su variable de bucle. La declaración de condition se evalúa al comienzo de cada iteración de bucle y continuará mientras se evalúe como true . Cuando la condition es false al inicio de la iteración, el bucle dejará de ejecutarse. Esto significa que si la condition comienza como false , su bucle nunca se ejecutará. La final-expression se ejecuta al final de cada iteración de bucle, antes de la siguiente verificación de condition y generalmente se usa para incrementar o disminuir su contador de bucle. En el siguiente ejemplo, iniciamos con i = 0 e iteramos mientras nuestra condición i < 5 es verdadera. Incrementaremos i en 1 en cada iteración de bucle con i++ como nuestra final-expression . var ourArray = [];
para (var i = 0; i <5; i ++) {
nuestroArray.push (i);
}
ourArray ahora contendrá [0,1,2,3,4] . for loop porque se ejecuta "por" un número específico de veces. Para los bucles se declaran con tres expresiones opcionales separadas por punto y coma: for ([initialization]; [condition]; [final-expression]) La instrucción de initialization se ejecuta una sola vez antes de que comience el bucle. Normalmente se utiliza para definir y configurar su variable de bucle. La declaración de condition se evalúa al comienzo de cada iteración de bucle y continuará mientras se evalúe como true . Cuando la condition es false al inicio de la iteración, el bucle dejará de ejecutarse. Esto significa que si la condition comienza como false , su bucle nunca se ejecutará. La final-expression se ejecuta al final de cada iteración de bucle, antes de la siguiente verificación de condition y generalmente se usa para incrementar o disminuir su contador de bucle. En el siguiente ejemplo, iniciamos con i = 0 e iteramos mientras nuestra condición i < 5 es verdadera. Incrementaremos i en 1 en cada iteración de bucle con i++ como nuestra final-expression . var ourArray = [];
para (var i = 0; i <5; i ++) {
nuestroArray.push (i);
}
ourArray ahora contendrá [0,1,2,3,4] . for para trabajar y empujar los valores del 1 al 5 en myArray . while " bucle porque funciona "mientras que" una condición especificada es verdadera y se detiene una vez que la condición ya no es cierto. var ourArray = [];Intentemos que funcione un bucle while empujando los valores a una matriz.
var i = 0;
mientras (i <5) {
nuestroArray.push (i);
i ++;
}
while bucle porque funciona "mientras que" una condición especificada es verdadera y se detiene una vez que la condición ya no es cierto. var ourArray = [];Intentemos que funcione un bucle while empujando los valores a una matriz.
var i = 0;
mientras (i <5) {
nuestroArray.push (i);
i ++;
}
myArray usando un while de bucle. .pop() . .pop() se utiliza para " .pop() " un valor del final de una matriz. Podemos almacenar este valor "extraído" asignándolo a una variable. En otras palabras, .pop() elimina el último elemento de una matriz y devuelve ese elemento. Cualquier tipo de entrada se puede "extraer" de una matriz: números, cadenas, incluso matrices anidadas. var threeArr = [1, 4, 6];
var oneDown = threeArr.pop();
console.log(oneDown); // Returns 6
console.log(threeArr); // Returns [1, 4] .pop() . .pop() se utiliza para .pop() un valor del final de una matriz. Podemos almacenar este valor "extraído" asignándolo a una variable. En otras palabras, .pop() elimina el último elemento de una matriz y devuelve ese elemento. Cualquier tipo de entrada se puede "extraer" de una matriz: números, cadenas, incluso matrices anidadas. var threeArr = [1, 4, 6];
var oneDown = threeArr.pop();
console.log(oneDown); // Returns 6
console.log(threeArr); // Returns [1, 4] .pop() para eliminar el último elemento de myArray , asignando el valor " removedFromMyArray " a removedFromMyArray . .pop() para eliminar el último elemento de myArray , asignando el valor removedFromMyArray a removedFromMyArray . one criminal (" C ") en "C"
- testString: 'assert("C".match(reCriminals) && "C".match(reCriminals)[0] == "C", "Your regex should match one criminal ("C") in "C"");'
- - text: Su expresión regular debe coincidir con two delincuentes (" CC ") en "CC"
- testString: 'assert("CC".match(reCriminals) && "CC".match(reCriminals)[0] == "CC", "Your regex should match two criminals ("CC") in "CC"");'
- - text: Su expresión regular debe coincidir con three delincuentes (" CCC ") en "P1P5P4CCCP2P6P3"
- testString: 'assert("P1P5P4CCCP2P6P3".match(reCriminals) && "P1P5P4CCCP2P6P3".match(reCriminals)[0] == "CCC", "Your regex should match three criminals ("CCC") in "P1P5P4CCCP2P6P3"");'
- - text: Su expresión regular debe coincidir con five delincuentes (" CCCCC ") en "P6P2P7P4P5CCCCCP3P1"
- testString: 'assert("P6P2P7P4P5CCCCCP3P1".match(reCriminals) && "P6P2P7P4P5CCCCCP3P1".match(reCriminals)[0] == "CCCCC", "Your regex should match five criminals ("CCCCC") in "P6P2P7P4P5CCCCCP3P1"");'
+ - text: Su expresión regular debe coincidir con one criminal (C ) en "C"
+ testString: 'assert("C".match(reCriminals) && "C".match(reCriminals)[0] == "C", "Your regex should match one criminal (C) in "C"");'
+ - text: Su expresión regular debe coincidir con two delincuentes (CC) en "CC"
+ testString: 'assert("CC".match(reCriminals) && "CC".match(reCriminals)[0] == "CC", "Your regex should match two criminals (CC) in "CC"");'
+ - text: Su expresión regular debe coincidir con three delincuentes (CCC) en "P1P5P4CCCP2P6P3"
+ testString: 'assert("P1P5P4CCCP2P6P3".match(reCriminals) && "P1P5P4CCCP2P6P3".match(reCriminals)[0] == "CCC", "Your regex should match three criminals (CCC) in "P1P5P4CCCP2P6P3"");'
+ - text: Su expresión regular debe coincidir con five delincuentes (CCCCC) en "P6P2P7P4P5CCCCCP3P1"
+ testString: 'assert("P6P2P7P4P5CCCCCP3P1".match(reCriminals) && "P6P2P7P4P5CCCCCP3P1".match(reCriminals)[0] == "CCCCC", "Your regex should match five criminals (CCCCC) in "P6P2P7P4P5CCCCCP3P1"");'
- text: Tu expresión regular no debe coincidir con ningún criminal en ""
testString: 'assert(!reCriminals.test(""), "Your regex should not match any criminals in """);'
- text: Su expresión regular no debe coincidir con ningún criminal en "P1P2P3"
testString: 'assert(!reCriminals.test("P1P2P3"), "Your regex should not match any criminals in "P1P2P3"");'
- - text: Su expresión regular debe coincidir con fifty delincuentes (" CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC ") en "P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3" .
- testString: 'assert("P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3".match(reCriminals) && "P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3".match(reCriminals)[0] == "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC", "Your regex should match fifty criminals ("CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC") in "P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3".");'
+ - text: Su expresión regular debe coincidir con fifty delincuentes (CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC) en "P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3" .
+ testString: 'assert("P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3".match(reCriminals) && "P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3".match(reCriminals)[0] == "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC", "Your regex should match fifty criminals (CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC) in "P2P1P5P4CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCP3".");'
```
diff --git a/curriculum/challenges/spanish/08-coding-interview-prep/rosetta-code/convert-seconds-to-compound-duration.spanish.md b/curriculum/challenges/spanish/08-coding-interview-prep/rosetta-code/convert-seconds-to-compound-duration.spanish.md
index 5ce92f775de..216f32218ee 100644
--- a/curriculum/challenges/spanish/08-coding-interview-prep/rosetta-code/convert-seconds-to-compound-duration.spanish.md
+++ b/curriculum/challenges/spanish/08-coding-interview-prep/rosetta-code/convert-seconds-to-compound-duration.spanish.md
@@ -7,7 +7,7 @@ localeTitle: Convertir segundos a duración compuesta
---
## Description
-Implementar una función que:
toma un número entero positivo que representa una duración en segundos como entrada (por ejemplo,100 ), y devuelve una cadena que muestra la misma duración descompuesta en semanas, días, horas, minutos y segundos como se detalla a continuación (por ejemplo, " 1 min, 40 sec "). Demostrar que pasa los siguientes tres casos de prueba:
Casos de prueba
| número de entrada | número de salida |
|---|---|
| 7259 | 2 hr, 59 sec |
| 86400 | 1 d |
| 6000000 | 9 wk, 6 d, 10 hr, 40 min |
Detalles
Se deben usar las siguientes cinco unidades:| unidad | sufijo utilizado en la salida | conversión |
|---|---|---|
| semana | wk | 1 semana = 7 días |
| día | d | 1 día = 24 horas |
| hora | hr | 1 hora = 60 minutos |
| minuto | min | 1 minuto = 60 segundos |
| segundo | sec |
1 d " y no " 0 wk, 1 d, 0 hr, 0 min, 0 sec "). Dé prioridad a las unidades más grandes sobre las más pequeñas como sea posible (p. ej., devolver 2 min, 10 sec y no 1 min, 70 sec o 130 sec ) Imitar el formato que se muestra en los casos de prueba (cantidades ordenadas de unidad mayor a menor y separadas por comas + espacio; valor y unidad de cada cantidad separada por espacio). Implementar una función que:
toma un número entero positivo que representa una duración en segundos como entrada (por ejemplo,100 ), y devuelve una cadena que muestra la misma duración descompuesta en semanas, días, horas, minutos y segundos como se detalla a continuación (por ejemplo, 1 min, 40 sec). Demostrar que pasa los siguientes tres casos de prueba:
Casos de prueba
| número de entrada | número de salida |
|---|---|
| 7259 | 2 hr, 59 sec |
| 86400 | 1 d |
| 6000000 | 9 wk, 6 d, 10 hr, 40 min |
Detalles
Se deben usar las siguientes cinco unidades:| unidad | sufijo utilizado en la salida | conversión |
|---|---|---|
| semana | wk | 1 semana = 7 días |
| día | d | 1 día = 24 horas |
| hora | hr | 1 hora = 60 minutos |
| minuto | min | 1 minuto = 60 segundos |
| segundo | sec |
1 d y no &0 wk, 1 d, 0 hr, 0 min, 0 sec). Dé prioridad a las unidades más grandes sobre las más pequeñas como sea posible (p. ej., devolver 2 min, 10 sec y no 1 min, 70 sec o 130 sec ) Imitar el formato que se muestra en los casos de prueba (cantidades ordenadas de unidad mayor a menor y separadas por comas + espacio; valor y unidad de cada cantidad separada por espacio).