diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 79e5f1ff..0f56eee4 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -3,4 +3,4 @@ FROM gitpod/workspace-full:latest USER gitpod RUN npm i jest@24.8.0 -g -RUN npm i learnpack -g && learnpack plugins:install learnpack-node@0.0.13 \ No newline at end of file +RUN npm i learnpack@0.0.88 -g && learnpack plugins:install learnpack-node@0.0.17 diff --git a/README.md b/README.md index 5a55bb55..1c868967 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Looping in Javascript Tutorial & Exercises - + > By [@alesanchezr](https://twitter.com/alesanchezr) and [other contributors](https://github.com/4GeeksAcademy/javascript-arrays-exercises-tutorial/graphs/contributors) at [4Geeks Academy](https://4geeksacademy.co/) @@ -8,12 +8,15 @@ [![build by developers](https://img.shields.io/badge/build_by-Developers-blue)](https://breatheco.de) [![build by developers](https://img.shields.io/twitter/follow/4geeksacademy?style=social&logo=twitter)](https://twitter.com/4geeksacademy) + Dozens of looping exercises to sharpen your looping skills with for, forEach, map, filter, looping a dictionary, looping bidimentional arrays, adding conditions to loops, finding an element, and more! 1. [Javascript for Beginners](https://github.com/4GeeksAcademy/javascript-beginner-exercises-tutorial) -2. [Looping with Javascript](https://github.com/4GeeksAcademy/javascript-beginner-exercises-tutorial) ← your are here now 🔥 +2. [Looping with Javascript](https://github.com/4GeeksAcademy/javascript-arrays-exercises-tutorial) ← your are here now 🔥 3. [Javascript Functions](https://github.com/4GeeksAcademy/javascript-functions-exercises-tutorial) +We need you! These exercises are built and maintained in collaboration with contributors such as yourself. If you find any bugs or misspellings please contribute and/or report them. +

diff --git a/badge-loop.png b/badge-loop.png new file mode 100644 index 00000000..7bb55f7e Binary files /dev/null and b/badge-loop.png differ diff --git a/exercises/01-Welcome/README.es.md b/exercises/01-Welcome/README.es.md index af1e3639..a78d1d84 100644 --- a/exercises/01-Welcome/README.es.md +++ b/exercises/01-Welcome/README.es.md @@ -5,7 +5,9 @@ intro: https://www.youtube.com/watch?v=ooHdelGf0gI # Bienvenido a los Loops -Practicaremos los bucles en javascript para se sienta cómodo con ellos. Recomendamos ver el siguiente video [Breve video sobre bucles](https://www.youtube.com/watch?v=U3ZlQSOcOI0) before starting: +Practicaremos los bucles o loops en javascript hasta que te sientas cómodo con ellos. + +Te recomendamos ver el siguiente ![video sbre loops o bucles](https://www.youtube.com/watch?v=U3ZlQSOcOI0) antes de empezar. Nos centraremos en: 1. For loop. 2. forEach. @@ -15,7 +17,7 @@ Practicaremos los bucles en javascript para se sienta cómodo con ellos. Recome 6. find. 7. Diccionario de bucles (objetos literales). -Haga click en `next →` cuando se encuentre listo para iniciar los ejercicios. +Haga click en `next →` cuando estés listo para iniciar los ejercicios. *** @@ -23,7 +25,7 @@ Si necesitas ir a un ejercicio en particular puedes seleccionar en el menu super

-Y seleccionar el curso +Y seleccionar el ejercicio

\ No newline at end of file diff --git a/exercises/01-Welcome/README.md b/exercises/01-Welcome/README.md index 8279d4e4..6bcccda2 100644 --- a/exercises/01-Welcome/README.md +++ b/exercises/01-Welcome/README.md @@ -5,7 +5,9 @@ intro: https://www.youtube.com/watch?v=ooHdelGf0gI # Welcome to Loops -Practice loops in javascript until you become confortable with it, I recomend watching [this short video about loops](https://www.youtube.com/watch?v=U3ZlQSOcOI0) before starting: +Practice loops in javascript until you become confortable with it. + +We recomend you watching [this short video about loops](https://www.youtube.com/watch?v=U3ZlQSOcOI0) before starting. We will focus on: 1. For loop. 2. forEach. @@ -16,3 +18,13 @@ Practice loops in javascript until you become confortable with it, I recomend wa 7. Loop dictionaries (object literals). Click `next →` when you are ready to start the exercises. + +*** +If you need to go to a specific exercise you may select the top menu +

+ +

+And select the exercise +

+ +

\ No newline at end of file diff --git a/exercises/02-Hello-World/README.es.md b/exercises/02-Hello-World/README.es.md index 99481abe..1a167956 100644 --- a/exercises/02-Hello-World/README.es.md +++ b/exercises/02-Hello-World/README.es.md @@ -2,18 +2,21 @@ En JavaScript, usamos `console.log` para hacer que la computadora escriba lo que queramos (el contenido de una variable, una cadena dada, etc.) en algo llamado `la consola`. -Cada lenguaje de programación tiene una consola, ya que era la única forma de interactuar con los usuarios al principio (antes de que llegaran Windows o MacOS). Hoy, la impresión en la consola se usa principalmente como una herramienta de monitoreo, ideal para dejar un rastro del contenido de las variables durante la ejecución del programa. +Cada lenguaje de programación tiene una consola, ya que era la única forma de interactuar con los usuarios al principio (antes de que llegaran Windows o MacOS). + +Hoy, la impresión en la consola se usa principalmente como una herramienta de monitoreo, ideal para dejar un rastro del contenido de las variables durante la ejecución del programa. Este es un ejemplo de cómo usarlo: + ```js console.log("How are you?"); ``` ## 📝 Instrucciones: -Use console.log para imprimir "Hello World" en la consola. Siéntase libre de probar otras cosas también. +1. Usa `console.log` para imprimir "Hello World" en la consola. Sientete libre de probar otras cosas también. -## 💡 Información Adicional: +## 💡 Pista: Video de 5 minutos sobre la consola: https://www.youtube.com/watch?v=1RlkftxAo-M \ No newline at end of file diff --git a/exercises/02-Hello-World/README.md b/exercises/02-Hello-World/README.md index 272c8c09..805c1117 100644 --- a/exercises/02-Hello-World/README.md +++ b/exercises/02-Hello-World/README.md @@ -6,16 +6,19 @@ tutorial: https://www.youtube.com/watch?v=miBzmGgMIbU In JavaScript, we use `console.log` to make the computer write anything we want (the content of a variable, a given string, etc.) in something called `the console`. -Every language has a console, as it was the only way to interact with the users at the beginning (before the Windows or MacOS arrived). Today, printing in the console is used mostly as a monitoring tool, ideal to leave a trace of the content of variables during the program execution. +Every language has a console, as it was the only way to interact with the users at the beginning (before the Windows or MacOS arrived). + +Today, printing in the console is used mostly as a monitoring tool, ideal to leave a trace of the content of variables during the program execution. This is an example of how to use it: + ```js console.log("How are you?"); ``` ## 📝 Instructions: -Use console.log to print "Hello World" on the console. Feel free to try other things as well. +1. Use console.log to print "Hello World" on the console. Feel free to try other things as well. ## 💡 Hint: diff --git a/exercises/03.1-Access-and-retrieve/README.es.md b/exercises/03.1-Access-and-retrieve/README.es.md index 9f78cd26..0f0974d3 100644 --- a/exercises/03.1-Access-and-retrieve/README.es.md +++ b/exercises/03.1-Access-and-retrieve/README.es.md @@ -1,26 +1,35 @@ # `03.1` Access and Retrive -Las matrices (arreglos) son parte de cada lenguaje de programación. Son el camino a seguir cuando desea tener una "lista de elementos". +Los arrays (arreglos) son parte de todo lenguaje de programación. Son el camino a seguir cuando quieres tener una "lista de elementos". + +Por ejemplo, podríamos tener un arreglo (array) que almacena los días de la semana: -Por ejemplo, podríamos tener un arreglo que almacena los días de la semana: ```js var myArray = ['sunday','monday','tuesday','wednesday','thursday','friday','saturday']; ``` Cada arreglo tiene las siguientes partes: -- Items: son los valores reales dentro de cada posición del arreglo. + +- Items: son los valores reales dentro de cada posición del arreglo (array). + - Length (Longitud): es el tamaño del arreglo, el número de elementos. + - Index (indice): es la posición de un elemento. ![Como funciona un arreglo](https://github.com/4GeeksAcademy/javascript-arrays-exercises-tutorial/blob/5e6a9b1276ed2b7de1b9bb0240105983c170611c/.learn/assets/DbmSOHT.png?raw=true) -Para acceder a cualquier elemento en particular dentro del arreglo, necesitas conocer su índice (posición). El índice es un valor entero que representa la posición en la que se encuentra el elemento. Acotación: ¡Cada arreglo comienza desde cero (0)! +Para acceder a cualquier elemento en particular dentro del arreglo (array) debes conocer su índice (posición. El índice es un valor entero que representa la posición en la que se encuentra el elemento. + +**IMPORTANTE: ¡Cada arreglo comienza desde cero (0)!** # 📝 Instrucciones -1. Usando la función `console.log`, imprima el tercer elemento del arreglo. -2. Cambia el valor en la posición donde se encuentra `jueves` a nulo. +1. Usando la función `console.log`, imprime el tercer elemento del arreglo. + +2. Cambia el valor en la posición donde se encuentra `jueves` a `null`(nulo). + 3. Imprime esa posición en particular. -```txt -⚠️ Nota Importante: Use null como valor y no "null" como un string. -``` \ No newline at end of file + +### :bulb: Pista: + + Usa null como valor y no "null" como un string. diff --git a/exercises/03.1-Access-and-retrieve/README.md b/exercises/03.1-Access-and-retrieve/README.md index 58e7fb4e..cf6cd72c 100644 --- a/exercises/03.1-Access-and-retrieve/README.md +++ b/exercises/03.1-Access-and-retrieve/README.md @@ -6,25 +6,33 @@ tutorial: https://www.youtube.com/watch?v=9-yAzjsWXtU Arrays are part of every programming language. They are the way to go when you want to have a "list of elements." -For example, we could have an array that is storing the days of the week: +For example, we could have an array that stores the days of the week: + ```js var myArray = ['sunday','monday','tuesday','wednesday','thursday','friday','saturday']; ``` Every array has the following parts: + - Items: are the actual values inside on each position of the array. + - Length: is the size of the array, the number of items. + - Index: is the position of an element. ![How arrays work](https://github.com/4GeeksAcademy/javascript-arrays-exercises-tutorial/blob/5e6a9b1276ed2b7de1b9bb0240105983c170611c/.learn/assets/DbmSOHT.png?raw=true) -To access any particular item within the array you need to know its index (position). The index is an integer value that represents the position in which the element is located. Protip: Every array starts from cero (0)! +To access any particular item within the array you need to know its index (position). The index is an integer value that represents the position in which the element is located. +**IMPORTANT: Every array starts from cero (0)!** # 📝 Instructions 1. Using the `console.log` function, print the 3rd item from the array. -2. Change the value in the position where `thursday` is located to null. + +2. Change the value in the position where `thursday` is located to `null`. + 3. Print that particular position. -```txt -⚠️ Important note: Use null as a value and not "null" as a string. -``` +### :bulb: Hint: + + Use null as a value and not "null" as a string. + diff --git a/exercises/03.2-Retrieve-Items/README.es.md b/exercises/03.2-Retrieve-Items/README.es.md index f15ad037..8f87c50c 100644 --- a/exercises/03.2-Retrieve-Items/README.es.md +++ b/exercises/03.2-Retrieve-Items/README.es.md @@ -1,13 +1,15 @@ # `03.2` Retrieve Items -La única forma de acceder a un elemento particular en un arreglo es usando un índice. Un índice es un número entero que representa la posición a la que desea acceder en el arreglo. +La única forma de acceder a un elemento particular en un arreglo es usando un índice. Un índice es un `número` entero que representa la posición a la que desea acceder en el arreglo. + +Debes envolver el índice entre corchetes de esta manera: -Necesita envolver el índice entre corchetes de esta manera: ```js var myValue = array[index]; ``` # 📝 Instrucciones -1. Imprima en la consola el 1er elemento de la matriz -2. Imprima en la consola el 4to elemento de la matriz \ No newline at end of file +1. Imprima en la consola el 1er elemento de array o arreglo. + +2. Imprima en la consola el 4to elemento de la arreglo o array. \ No newline at end of file diff --git a/exercises/03.2-Retrieve-Items/README.md b/exercises/03.2-Retrieve-Items/README.md index 748ff6f0..fe95f899 100644 --- a/exercises/03.2-Retrieve-Items/README.md +++ b/exercises/03.2-Retrieve-Items/README.md @@ -4,9 +4,10 @@ tutorial: https://www.youtube.com/watch?v=rWYIgofIAME # `03.2` Retrieve Items -The only way of accessing a particular element in an array is using an index. An index is an integer number that represents the position you want to access in the array. +The only way to access a particular element in an array is by using an index. An index is an integer `number` that represents the position you want to access in the array. You need to wrap the index into brackets like this: + ```js var myValue = array[index]; ``` @@ -14,4 +15,5 @@ var myValue = array[index]; # 📝 Instructions 1. Print on the console the 1st element of the array + 2. Print on the console the 4th element of the array diff --git a/exercises/04-Print-the-last-one/README.es.md b/exercises/04-Print-the-last-one/README.es.md new file mode 100644 index 00000000..e3e595d5 --- /dev/null +++ b/exercises/04-Print-the-last-one/README.es.md @@ -0,0 +1,15 @@ +# `04.1` Print the last one + +Nunca sabrás cuántos elementos tiene `myStupidArray` porque se genera aleatoriamente durante el tiempo de ejecución utilizando la función `generateRandomArray`. + +¡Pero no te preocupes! La propiedad `myStupidArray.length` devuelve la longitud de `myArray` (intenta hacer un `console.log` y verás la longitud que se muestra en la consola). + +```js +var totalItems = myStupidArray.length; +``` + +## 📝 Instrucciones: + +1. Crea una variable llamada `theLastOne` y asígnale el último elemento de `myStupidArray`. + +2. Luego, imprímelo en la consola. \ No newline at end of file diff --git a/exercises/04.1-Print-the-last-one/README.md b/exercises/04-Print-the-last-one/README.md similarity index 68% rename from exercises/04.1-Print-the-last-one/README.md rename to exercises/04-Print-the-last-one/README.md index 7fd6b371..7d7372b6 100644 --- a/exercises/04.1-Print-the-last-one/README.md +++ b/exercises/04-Print-the-last-one/README.md @@ -6,7 +6,7 @@ tutorial: https://www.youtube.com/watch?v=d-CnlwX6x1A You will never know how many items `myStupidArray` has because it is being randomly generated during runtime using the `generateRandomArray` function. -But don't worry! The property `myStupidArray.length` returns the length of myArray (try console logging it and you will see the length displayed ont he console). +But don't worry! The property `myStupidArray.length` returns the length of `myArray` (try console logging it and you will see the length displayed on the console). ```js var totalItems = myStupidArray.length; @@ -14,5 +14,6 @@ var totalItems = myStupidArray.length; # 📝 Instructions -1. Create a variable named theLastOne, and assign it the LAST element of myStupidArray. +1. Create a variable named `theLastOne`, and assign it the LAST element of `myStupidArray`. + 2. Then, print it on the console. diff --git a/exercises/04.1-Print-the-last-one/app.js b/exercises/04-Print-the-last-one/app.js similarity index 100% rename from exercises/04.1-Print-the-last-one/app.js rename to exercises/04-Print-the-last-one/app.js diff --git a/exercises/04.1-Print-the-last-one/solution.hide.js b/exercises/04-Print-the-last-one/solution.hide.js similarity index 100% rename from exercises/04.1-Print-the-last-one/solution.hide.js rename to exercises/04-Print-the-last-one/solution.hide.js diff --git a/exercises/04.1-Print-the-last-one/tests.js b/exercises/04-Print-the-last-one/tests.js similarity index 100% rename from exercises/04.1-Print-the-last-one/tests.js rename to exercises/04-Print-the-last-one/tests.js diff --git a/exercises/04.1-Print-the-last-one/README.es.md b/exercises/04.1-Print-the-last-one/README.es.md deleted file mode 100644 index 71bbd633..00000000 --- a/exercises/04.1-Print-the-last-one/README.es.md +++ /dev/null @@ -1,14 +0,0 @@ -# `04.1` Print the last one - -Nunca sabrás cuántos elementos tiene `myStupidArray` porque se genera aleatoriamente durante el tiempo de ejecución utilizando la función `generateRandomArray`. - -Pero no te preocupes! La propiedad `myStupidArray.length` devuelve la longitud de myArray (intente iniciar sesión en la consola y verá la longitud que se muestra en la consola). - -```js -var totalItems = myStupidArray.length; -``` - -# 📝 Instrucciones - -1. Cree una variable llamada theLastOne y asígnele el último elemento de myStupidArray. -2. Luego, imprímalo en la consola. \ No newline at end of file diff --git a/exercises/05.1-Loop-from-one-to-seventeen/README.es.md b/exercises/05.1-Loop-from-one-to-seventeen/README.es.md index 11c27b1d..83aa7a66 100644 --- a/exercises/05.1-Loop-from-one-to-seventeen/README.es.md +++ b/exercises/05.1-Loop-from-one-to-seventeen/README.es.md @@ -1,6 +1,12 @@ -# `05.1` Loop from one to seventeen +# `05.1` Loop del uno al diecisiete -El loop (bucle) actual se repite de cero a diez, por favor, haga un loop de 1 a 17. +El loop (bucle) actual se repite del cero a diez, + +## 📝 Instrucciones: + +1. Por favor, haz un loop de 1 a 17. + +### Resultado esperado: ```bash 1 @@ -24,8 +30,9 @@ El loop (bucle) actual se repite de cero a diez, por favor, haga un loop de 1 a ## 💡Pista: -1. Tienes que recorrer del 1 al 17 (no del 0 al 17). -2. Aquí esta un [video de 2 min explicando como hacer un loop](https://www.youtube.com/watch?v=s9wW2PpJsmQ). ++ Tienes que recorrer del 1 al 17 (no del 0 al 17). + ++ Aquí esta un [video de 2 min explicando como hacer un loop](https://www.youtube.com/watch?v=s9wW2PpJsmQ). diff --git a/exercises/05.1-Loop-from-one-to-seventeen/README.md b/exercises/05.1-Loop-from-one-to-seventeen/README.md index 9b27e9b7..a92a89ae 100644 --- a/exercises/05.1-Loop-from-one-to-seventeen/README.md +++ b/exercises/05.1-Loop-from-one-to-seventeen/README.md @@ -4,9 +4,13 @@ tutorial: https://www.youtube.com/watch?v=4QGaROXZ3oc # `05.1` Loop from one to seventeen -The current loop is looping from zero to ten, please make it loop from 1 to 17. +The current loop is looping from zero to ten, -Expected console result: +## 📝 Instructions + +1. Please make it loop from 1 to 17. + +### Expected result: ```bash 1 @@ -30,8 +34,9 @@ Expected console result: ## 💡Hint: -1. You have to loop from 1 to 17 (not from 0 to 17). -2. Here is a [2 minute video explaining how to loop](https://www.youtube.com/watch?v=s9wW2PpJsmQ). ++ You have to loop from 1 to 17 (not from 0 to 17). + ++ Here is a [2 minute video explaining how to loop](https://www.youtube.com/watch?v=s9wW2PpJsmQ). diff --git a/exercises/05.2-Loop-from-seven-to-twelve/README.es.md b/exercises/05.2-Loop-from-seven-to-twelve/README.es.md index eb045091..0c8e003e 100644 --- a/exercises/05.2-Loop-from-seven-to-twelve/README.es.md +++ b/exercises/05.2-Loop-from-seven-to-twelve/README.es.md @@ -1,6 +1,10 @@ -# `05.2` Loop from seven to twelve +# `05.2` Loop del siete al doce -Cuenta del 7 al 12 con un loop e imprima cada número en la consola. +## 📝 Instrucciones: + +1. Cuenta del 7 al 12 con un loop e imprime cada número en la consola. + +## Resultado esperado: ```bash 7 diff --git a/exercises/05.2-Loop-from-seven-to-twelve/README.md b/exercises/05.2-Loop-from-seven-to-twelve/README.md index fe1c21f1..ca1648f2 100644 --- a/exercises/05.2-Loop-from-seven-to-twelve/README.md +++ b/exercises/05.2-Loop-from-seven-to-twelve/README.md @@ -4,7 +4,11 @@ tutorial: https://www.youtube.com/watch?v=6eLXV_IL2m0 # `05.2` Loop from seven to twelve -Count from 7 to 12 with a loop and print each number on the console. +## 📝 Instructions: + +1. Count from 7 to 12 with a loop and print each number on the console. + +## Expected result: ```bash 7 diff --git a/exercises/05.3-Add-items-to-array/README.es.md b/exercises/05.3-Add-items-to-array/README.es.md index 7e217242..bc464d3d 100644 --- a/exercises/05.3-Add-items-to-array/README.es.md +++ b/exercises/05.3-Add-items-to-array/README.es.md @@ -1,8 +1,11 @@ -# `05.3` Add Items to Array +# `05.3` Añade Items a un Array -Agrega 2 enteros aleatorios a la lista "arr" e imprime el arreglo en la consola. +## 📝 Instrucciones: -## 💡 Tips: +1. Agrega 2 números enteros aleatorios a la lista `arr` (no necesitas un loop o bucle) e imprime el array en la consola. -- Puedes usar las funciones Math.random () y Math.floor () para obtener números aleatorios -- Debes usar la función `.push (item)` para agregar el nuevo número aleatorio al loop \ No newline at end of file +## 💡 Pista: + +- Puedes usar las funciones `Math.random()` y `Math.floor()` para obtener números aleatorios, debes hacerlo dentro del loop o bucle. + +- Debes usar la función `.push (item)` para agregar el nuevo número aleatorio al array \ No newline at end of file diff --git a/exercises/05.3-Add-items-to-array/README.md b/exercises/05.3-Add-items-to-array/README.md index f0751eaa..7ebe9cf8 100644 --- a/exercises/05.3-Add-items-to-array/README.md +++ b/exercises/05.3-Add-items-to-array/README.md @@ -1,8 +1,15 @@ +--- +tutorial: https://www.youtube.com/watch?v=no9mCu-tvaM +--- + # `05.3` Add Items to Array -Add 2 random integers to the "arr" list (no need to loop) and print the array on the console +## 📝 Instructions: + +1. Add 2 random integers to the `arr` list (no need to loop) and print the array on the console. + +## 💡 Hint: -## 💡 Tips: +- You can use the `Math.random()` and `Math.floor()` functions to get random numbers, you should do that inside the loop. -- You can use the Math.random() and Math.floor() functions to get random numbers, you should do that inside the loop -- You have to use the `.push(item)` function to add the new random number to the array. \ No newline at end of file +- You have to use the `.push(item)` function to add the new random number to the array. diff --git a/exercises/05.4-Add-items-to-array-looping/README.es.md b/exercises/05.4-Add-items-to-array-looping/README.es.md index 39576e76..9bc6e7bf 100644 --- a/exercises/05.4-Add-items-to-array-looping/README.es.md +++ b/exercises/05.4-Add-items-to-array-looping/README.es.md @@ -1,10 +1,15 @@ -# `05.3` Loop and add Items to Array +# `05.3` Loop y añade Items al Array -Agrega 10 enteros aleatorios a la lista "arr" e imprime el arreglo en la consola. +## 📝 Instrucciones: -## 💡 Tips: +1. Agrega 10 enteros aleatorios a la lista `arr` e imprime el array o arreglo en la consola. -1. Puedes buscar en Google "Cómo hacer un bucle 10 veces en javascript". -2. Aquí hay un [gran resultado de google](https://stackoverflow.com/questions/45024991/run-a-loop-n-times) -3. Puedes usar las funciones Math.random () y Math.floor () para obtener números aleatorios, debes hacerlo dentro del loop -4. En cada iteración del loop, debes usar la función `.push (item)` para agregar el nuevo número aleatorio al loop \ No newline at end of file +## 💡 Pista: + ++ Puedes buscar en Google "Cómo hacer un bucle 10 veces en javascript". + ++ Aquí hay un [gran resultado de google](https://stackoverflow.com/questions/45024991/run-a-loop-n-times). + ++ Puedes usar las funciones `Math.random()` y `Math.floor()` para obtener números aleatorios, debes hacerlo dentro del loop. + ++ En cada iteración del loop, debes usar la función `.push (item)` para agregar el nuevo número aleatorio al array o \ No newline at end of file diff --git a/exercises/05.4-Add-items-to-array-looping/README.md b/exercises/05.4-Add-items-to-array-looping/README.md index 23d5dd39..3859fead 100644 --- a/exercises/05.4-Add-items-to-array-looping/README.md +++ b/exercises/05.4-Add-items-to-array-looping/README.md @@ -4,11 +4,16 @@ tutorial: https://www.youtube.com/watch?v=QLnkSPNTgNo # `05.4` Loop and add items to Array thru looping -Add 10 random integers to the "arr" list and print the array on the console. +## 📝 Instructions: -## 💡 Tips: +1. Add 10 random integers to the `arr` list and print the array on the console. -1. You can google "How to loop 10 times in javascript". -2. Here is a [great result from google](https://stackoverflow.com/questions/45024991/run-a-loop-n-times) -3. You can use the Math.random() and Math.floor() functions to get random numbers, you should do that inside the loop -4. On each loop iteration you have to use the `.push(item)` function to add the new random number to the array \ No newline at end of file +## 💡 Hint: + ++ You can google "How to loop 10 times in javascript". + ++ Here is a [great result from google](https://stackoverflow.com/questions/45024991/run-a-loop-n-times). + ++ You can use the` Math.random()` and `Math.floor()` functions to get random numbers, you should do that inside the loop. + ++ On each loop iteration you have to use the `.push(item)` function to add the new random number to the array. \ No newline at end of file diff --git a/exercises/06.1-Loop-Array/README.es.md b/exercises/06.1-Loop-Array/README.es.md index 021bf4c7..7c8bad59 100644 --- a/exercises/06.1-Loop-Array/README.es.md +++ b/exercises/06.1-Loop-Array/README.es.md @@ -1,14 +1,15 @@ -# `06.1` Loop an array +# `06.1` Haz un bucle (loop) a un array, recorre un array -Ok, esta es la primera vez que recorrer un loop desde cero, tómete 6 minutos para ver este video en [como recorrer un arreglo](https://www.youtube.com/watch?v=24Wpg6njlYI). +Ok, esta es la primera vez que recorrer un loop desde cero, tómete 6 minutos para ver este video sobre [cómo recorrer un arreglo](https://www.youtube.com/watch?v=24Wpg6njlYI). -# 📝Instrucciones +## 📝Instrucciones: -El código ahora está imprimiendo el primer elemento en la consola. En lugar de hacerlo, imprima todos los elementos en el arreglo. +El código ahora imprime el primer elemento en la consola. -Tendrás que recorrer todo el arreglo utilizando un loop. +1. En vez de ello, imprime todos los elementos en el arreglo o array. Tendrás que recorrer todo el arreglo utilizando un loop. ## 💡Pista: -1. Recuerde que para acceder al valor de una posición debe usar el índice `console.log (myArray [index]);` -2. [Aquí tienes un video genial](https://www.youtube.com/watch?v=24Wpg6njlYI) que explica cómo usar el `for` para recorrer el loop de un arreglo. \ No newline at end of file ++ Recuerde que para acceder al valor de una posición debe usar el índice `console.log (myArray [index]);`. + ++ [Aquí tienes un video genial](https://www.youtube.com/watch?v=24Wpg6njlYI) que explica cómo usar el bucle `for` para recorrer el loop de un arreglo o array. \ No newline at end of file diff --git a/exercises/06.1-Loop-Array/README.md b/exercises/06.1-Loop-Array/README.md index 5a1a449a..db230c9c 100644 --- a/exercises/06.1-Loop-Array/README.md +++ b/exercises/06.1-Loop-Array/README.md @@ -6,13 +6,14 @@ tutorial: https://www.youtube.com/watch?v=Dd2uXOwhTzY Ok this is the first time you will be looping an array from scratch, please take 6 minutes to watch these video on [how to loop an array](https://www.youtube.com/watch?v=24Wpg6njlYI). -# 📝Instructions +## 📝Instructions: -The code right now is printing the first item in the console. Instead of doing that, print all the elements in the array. +The code right now is printing the first item in the console. Instead of doing that, -You will have to loop through the whole array using a loop. +1. Print all the elements in the array. Loop through the whole array using a loop. -## 💡Hint +## 💡Hint: -1. Remember that to access the value of a position you have to use the index `console.log(myArray[index]);` -2. [Here is a cool video](https://www.youtube.com/watch?v=24Wpg6njlYI) explaining how to use the `for` loop to loop arrays. \ No newline at end of file ++ Remember that to access the value of a position you have to use the index `console.log(myArray[index]);`. + ++ [Here is a cool video](https://www.youtube.com/watch?v=24Wpg6njlYI) explaining how to use the `for` loop to loop arrays. \ No newline at end of file diff --git a/exercises/06.2-Loop-from-the-top/README.es.md b/exercises/06.2-Loop-from-the-top/README.es.md index 24458f3c..8919912f 100644 --- a/exercises/06.2-Loop-from-the-top/README.es.md +++ b/exercises/06.2-Loop-from-the-top/README.es.md @@ -1,10 +1,12 @@ # `06.2` Loop from the top -Este ciclo está haciendo un bucle del arreglo de principio a fin ... aumentando uno por uno. +Este loop o bucle está haciendo un bucle del arreglo o array de principio a fin ... aumentando uno por uno. -# 📝 Instrucciones +## 📝 Instrucciones: -Vamos a intentar hacer un bucle desde el final hasta el principio. +1. Intenta hacer un bucle desde el final hasta el principio. + +## Resultado esperado: ```bash 12 diff --git a/exercises/06.2-Loop-from-the-top/README.md b/exercises/06.2-Loop-from-the-top/README.md index 205e9870..e12b7c29 100644 --- a/exercises/06.2-Loop-from-the-top/README.md +++ b/exercises/06.2-Loop-from-the-top/README.md @@ -6,9 +6,11 @@ tutorial: https://www.youtube.com/watch?v=IX2m3SWq7tg This loop is looping the array from beginning to end... increasing one by one. -# 📝 Instructions +## 📝 Instructions: -Lets try looping from the end to the beginning. +1. Try looping from the end to the beginning. + +## Expected result: ```bash 12 diff --git a/exercises/06.3-Loop-adding-two/README.es.md b/exercises/06.3-Loop-adding-two/README.es.md index c32158b2..e274c1d7 100644 --- a/exercises/06.3-Loop-adding-two/README.es.md +++ b/exercises/06.3-Loop-adding-two/README.es.md @@ -1,12 +1,12 @@ -# `06.3` Loop adding two +# `06.3` Loop de dos en dos Este código está reproduciendo todo el conjunto, uno por uno, e imprime los elementos en la consola. -# 📝 Instrucciones +## 📝 Instrucciones: -Cambie el bucle para que se repita de dos en dos en lugar de uno por uno. +1. Cambie el bucle para que se repita de dos en dos en lugar de uno por uno. -La salida de la consola debería ser algo como: +## Resultado esperado: ```md 3423 diff --git a/exercises/06.3-Loop-adding-two/README.md b/exercises/06.3-Loop-adding-two/README.md index 7fed57ba..1fc7ebf6 100644 --- a/exercises/06.3-Loop-adding-two/README.md +++ b/exercises/06.3-Loop-adding-two/README.md @@ -6,11 +6,11 @@ tutorial: https://www.youtube.com/watch?v=VpXGQbY6UFs This code is looping the whole array, one by one, and printing the items on the console. -# 📝 Instructions +## 📝 Instructions: -Change the loop so it loops two by two instead of one by one. +1. Change the loop so it loops two by two instead of one by one. -The console output should be something like: +## Expected result: ```md 3423 diff --git a/exercises/06.4-Loop-from-the-half-to-the-end/README.es.md b/exercises/06.4-Loop-from-the-half-to-the-end/README.es.md index eedd0f5f..567002e8 100644 --- a/exercises/06.4-Loop-from-the-half-to-the-end/README.es.md +++ b/exercises/06.4-Loop-from-the-half-to-the-end/README.es.md @@ -1,13 +1,16 @@ -# `06.4` Loop from the half to the end +# `06.4` Loop desde la mitad hasta el final -Este bucle(loop) no está recorriendo el arreglo en lo absoluto ... porque las variables Valor inicial, Valor de detención y Valor creciente son iguales a cero. +Este bucle(loop) no está recorriendo el arreglo en lo absoluto ... porque las variables `initialValue`, `stopValue` y`increasingValue` son iguales a cero. -# 📝 Instrucciones +## 📝 Instrucciones + +1. Cambia el valor de esas variables para que el bucle imprima solo la última mitad del arreglo. + +### :bulb: Pista: -Cambie el valor de esas variables para que el bucle imprima solo la última mitad del arreglo. ¡Solo cambia el valor de esas 3 variables! -La salida de la consola debería ser algo como: +### Resultado esperado: ```md 23 diff --git a/exercises/06.4-Loop-from-the-half-to-the-end/README.md b/exercises/06.4-Loop-from-the-half-to-the-end/README.md index e9481390..62efacde 100644 --- a/exercises/06.4-Loop-from-the-half-to-the-end/README.md +++ b/exercises/06.4-Loop-from-the-half-to-the-end/README.md @@ -4,14 +4,17 @@ tutorial: https://www.youtube.com/watch?v=rZp3TrD8tto # `06.4` Loop from the half to the end -This loop is not looping at all... because the variables initialValue, stopValue and increasingValue are equal to zero. +This loop is not looping at all... because the variables `initialValue`, `stopValue` and `increasingValue` are equal to zero. -# 📝 Instructions +## 📝 Instructions + +1. Change the value of those variables to make the loop print only the last half of the array. + +### :bulb: Hint: -Change the value of those variables to make the loop print only the last half of the array. Change nothing but the value of those 3 variables! -The console output should be something like: +### Expected result: ```md 23 diff --git a/exercises/06.5-One-last-looping/README.es.md b/exercises/06.5-One-last-looping/README.es.md index 9979f6ef..20bd40b2 100644 --- a/exercises/06.5-One-last-looping/README.es.md +++ b/exercises/06.5-One-last-looping/README.es.md @@ -1,8 +1,12 @@ -# `06.5` One Last Looping +# `06.5` Un último loop -Sin usar la función array.reverse, invierte el bucle (desde el final hasta el principio) todo el arreglo e imprime todos los elementos en la consola a medida que avanza. -El resultado deberia ser algo como esto: +## 📝 Instrucciones: + +1. Sin usar la función `array.reverse`, invierte el bucle (desde el final hasta el principio) todo el arreglo o array e imprime todos los elementos en la consola a medida que lo recorre. + +### Resultado esperado: + ```md Annie Bart @@ -17,7 +21,8 @@ Kiko Esmeralda ``` -## 💡Pista: +## 💡 Pista: + ++ Use un bucle `for ()` como hemos lo hemos hecho en ejercicios anteriores. -1. Use un bucle `for ()` como hemos estado usando en ejercicios anteriores. -2. Recuerde que los arreglos comienzan en la posición 0. ++ Recuerda que los arreglos comienzan en la posición 0. diff --git a/exercises/06.5-One-last-looping/README.md b/exercises/06.5-One-last-looping/README.md index 57357b1b..938360b0 100644 --- a/exercises/06.5-One-last-looping/README.md +++ b/exercises/06.5-One-last-looping/README.md @@ -4,9 +4,13 @@ tutorial: https://www.youtube.com/watch?v=IwDDj6wN4jY # `06.5` One Last Looping -Without using the array.reverse function, please reverse loop (from the end to the beginning) the whole array and print all the items on the console as you go. -The result should be something like this: +## 📝 Instructions: + +1. Without using the `array.reverse` function, please reverse loop (from the end to the beginning) the whole array and print all the items on the console as you go. + +### Expected result: + ```md Annie Bart @@ -21,7 +25,8 @@ Kiko Esmeralda ``` -## 💡Hint: +## 💡 Hint: + ++ Use a `for()` loop like we have been using in previous exercises. -1. Use a `for()` loop like we have been using in previous exercises. -2. Remember that arrays start at position 0. ++ Remember that arrays start at position 0. diff --git a/exercises/07.1-Finding-Waldo/README.es.md b/exercises/07.1-Finding-Waldo/README.es.md index d3cd784f..a37f09ea 100644 --- a/exercises/07.1-Finding-Waldo/README.es.md +++ b/exercises/07.1-Finding-Waldo/README.es.md @@ -1,14 +1,17 @@ -# `07.1` Find Waldo :smile: +# `07.1` Encuentra a Wally :smile: +![Finding Waldo](https://github.com/4GeeksAcademy/javascript-arrays-exercises-tutorial/blob/5c8f7b7dbb094e0552565227fc24faad6dc05a13/.breathecode/assets/finding_waldo.jpeg?raw=true) -¿Alguna vez has jugado a encontrar a Waldo? Solía jugar mucho cuando era pequeño, este ejercicio es una versión digital de encontrar a Waldo. +¿Alguna vez has jugado a encontrar a Waldo (o Wally)? Solía jugar mucho cuando era pequeño, este ejercicio es una versión digital de encontrar a Waldo. -# :pencil: Instrucciones +## :pencil: Instrucciones: -Haz un bucle en este arreglo que lo recorra por completo e imprima las posiciones donde se encuentra el string "Waldo". +1. Haz un bucle en este arreglo o array que lo recorra por completo e imprima las posiciones donde se encuentra el string "Waldo". ### :bulb: Pista -1. Necesitas agregar un condicional dentro del bucle.. -2. Waldo puede ser mayúscula o minúscula, compare ambos valores [usando toLowerCase()](https://www.geeksforgeeks.org/compare-the-case-insensitive-strings-in-javascript/) + ++ Necesitas agregar un condicional dentro del bucle.. + ++ Waldo puede ser mayúscula o minúscula, compara ambos valores [usando toLowerCase()](https://www.geeksforgeeks.org/compare-the-case-insensitive-strings-in-javascript/) ### :egg: Easter Egg: diff --git a/exercises/07.1-Finding-Waldo/README.md b/exercises/07.1-Finding-Waldo/README.md index 7d62425b..352619af 100644 --- a/exercises/07.1-Finding-Waldo/README.md +++ b/exercises/07.1-Finding-Waldo/README.md @@ -5,15 +5,18 @@ tutorial: https://www.youtube.com/watch?v=5WphKLyEJaU # `07.1` Find Waldo :smile: ![Finding Waldo](https://github.com/4GeeksAcademy/javascript-arrays-exercises-tutorial/blob/5c8f7b7dbb094e0552565227fc24faad6dc05a13/.breathecode/assets/finding_waldo.jpeg?raw=true) + Have you every played finding Waldo? I used to play it a lot when I was little, this exercise is a digital version of finding Waldo. -# :pencil: Instructions +## :pencil: Instructions: -Please loop this entire array and print the positions where the string "Waldo" is found. +1. Please loop this entire array and print the positions where the string "Waldo" is found. ### :bulb: Hint -1. You need to add a conditional inside the loop. -2. Waldo may be upper case or lowercase, compare both values [using toLowerCase()](https://www.geeksforgeeks.org/compare-the-case-insensitive-strings-in-javascript/) + ++ You need to add a conditional inside the loop. + ++ Waldo may be upper case or lowercase, compare both values [using toLowerCase()](https://www.geeksforgeeks.org/compare-the-case-insensitive-strings-in-javascript/) ### :egg: Easter Egg: diff --git a/exercises/07.2-Letter-Counter/README.es.md b/exercises/07.2-Letter-Counter/README.es.md index 20588cf0..ed04bfd6 100644 --- a/exercises/07.2-Letter-Counter/README.es.md +++ b/exercises/07.2-Letter-Counter/README.es.md @@ -1,10 +1,12 @@ # `07.2` Letter Counter -Nuestro cliente necesita un programa que cuente las repeticiones de las letras en un string dada, sé que es extraño, pero son muy firmes. ¡Necesitamos esto lo antes posible! +Nuestro cliente necesita un programa que cuente las repeticiones de las letras en un string dado. Sé que es extraño, pero son muy testarudo ¡ Lo necesitamos lo antes posible! -# :pencil: Instrucciones +## :pencil: Instrucciones: -Crea un objeto donde las letras son las propiedades y los valores son el número de veces que esa letra se repite en toda la cadena. Por ejemplo: +1. Crea un objeto donde las letras son las propiedades y los valores son el número de veces que esa letra se repite en toda la cadena. + +Por ejemplo: ```js const word = "Hello World"; @@ -14,9 +16,14 @@ const word = "Hello World"; ## :bulb: Pista -1. Recorre todo el string. -2. En cada iteración verifique si el objeto "cuenta" tiene la letra inicializada como una propiedad. -3. Si no está inicializado, hazlo y establece el valor igual a 1 (la primera vez que se encuentra). -4. Si ya se inicializó, simplemente incremente el valor de la propiedad en uno. -5. Recuerda ignorar los espacios en blanco en la cadena. -6. Debes colocar en minúscula todas las letras para tener un conteo exacto de todas las letras. +1. Recorre todo el string (usa un bucle). + +2. En cada iteración verifica si el objeto `counts` tiene la letra inicializada como una propiedad. + +3. Si no está inicializada, hazlo y establece el valor en 1 (la primera vez que se encuentra). + +4. Si ya se inicializó, simplemente incrementa el valor de la propiedad en uno. + +5. Recuerda ignorar los espacios en blanco en el string. + +6. Debes colocar en minúscula(lowercase) todas las letras para tener un conteo exacto de todas las letras. diff --git a/exercises/07.2-Letter-Counter/README.md b/exercises/07.2-Letter-Counter/README.md index 173fd349..7476e217 100644 --- a/exercises/07.2-Letter-Counter/README.md +++ b/exercises/07.2-Letter-Counter/README.md @@ -4,25 +4,32 @@ tutorial: https://www.youtube.com/watch?v=oLTidCuisew --- -# `07.2` Letter Counter +# `07.2` Contador de letras Our customer needs a program that counts the letters repetitions in a given string, I know that's weird, but they are very adamant, We need this asap! -# :pencil: Instructions +## :pencil: Instructions: -Create an object were the letters are the properties and the values are the number of times that letter its repeated throughout the string. For example: +1. Create an object were the letters are the properties and the values are the number of times that letter its repeated throughout the string. + +For example: ```js const word = "Hello World"; -// Should print on the console { h: 1, e: 1, l: 3, o: 2, w: 1, r: 1, d: 1 } +// La consola debe imprimir { h: 1, e: 1, l: 3, o: 2, w: 1, r: 1, d: 1 } ``` ## :bulb: Hint -1. Loop the entire string. -2. On every iteration check if the object "counts" has the letter inicialized as a property. -3. If its not initialized then do it and set the value equal to 1 (first time found). -4. If it was alrady initialized just increment the property value in one. -5. Remember to ignore white spaces in the string. -6. You should lower case all letters to have an accurate count of all letters regardless of casing of the letter. \ No newline at end of file ++ Loop the entire string. + ++ On every iteration check if the object `counts` has the letter inicialized as a property. + ++ If its not initialized then do it and set the value equal to 1 (first time found). + ++ If it was already initialized just increment the property value in one. + ++ Remember to ignore white spaces in the string. + ++ You should lower case all letters to have an accurate count of all letters regardless of casing of the letter. \ No newline at end of file diff --git a/exercises/07.3-Flip-Array/README.es.md b/exercises/07.3-Flip-Array/README.es.md index b4e049a7..a4410906 100644 --- a/exercises/07.3-Flip-Array/README.es.md +++ b/exercises/07.3-Flip-Array/README.es.md @@ -1,13 +1,19 @@ -# `07.3` Flip Array +# `07.3` Invierte el Array + -Usando un bucle for, invierta el arreglo "arr" e imprime el nuevo arreglo en la consola. +## :pencil: Instrucciones: + +1. Usando un bucle `for`, invierte el arreglo o array `arr` e imprime el nuevo arreglo o array en la consola. + +Por ejemplo: ```md -Initial array: [45, 67, 87, 23, 5, 32, 60]; -Final array: [60, 32, 5 , 23, 87, 67, 45]; + array inicial: [45, 67, 87, 23, 5, 32, 60]; array array final : [60, 32, 5 , 23, 87, 67, 45]; ``` ## :bulb: Pista -1. Deberías recorrer todo el arreglo [desde el final hasta el principio](https://stackoverflow.com/questions/1340589/are-loops-really-faster-in-reverse). -2. En cada bucle, inserte todos los elementos (a medida que avanza) en un nueva arreglo, este será tu arreglo invertido. \ No newline at end of file ++ Debes recorrer todo el arreglo [desde el final hasta el principio](https://stackoverflow.com/questions/1340589/are-loops-really-faster-in-reverse). + ++ En cada bucle, inserta todos los elementos (a +medida que avanza) en un nuevo array o arreglo, este será tu arreglo invertido. \ No newline at end of file diff --git a/exercises/07.3-Flip-Array/README.md b/exercises/07.3-Flip-Array/README.md index b92e0570..381b4fa1 100644 --- a/exercises/07.3-Flip-Array/README.md +++ b/exercises/07.3-Flip-Array/README.md @@ -4,7 +4,11 @@ tutorial: https://www.youtube.com/watch?v=Snn7OtZY370 # `07.3` Flip Array -Using a for loop, invert the "arr" array and print the new array it on the console. +## :pencil: Instrucciones: + +1. Using a `for` loop, invert the `arr` array and print the new array it on the console. + +For example: ```md Initial array: [45, 67, 87, 23, 5, 32, 60]; @@ -13,5 +17,6 @@ Final array: [60, 32, 5 , 23, 87, 67, 45]; ## :bulb: Hint -1. You should loop the entire array [from the end to the beggining](https://stackoverflow.com/questions/1340589/are-loops-really-faster-in-reverse). -2. On each loop push all the items (as you go) into a new array, this will be your flipped array. \ No newline at end of file ++ You should loop the entire array [from the end to the beggining](https://stackoverflow.com/questions/1340589/are-loops-really-faster-in-reverse). + ++ On each loop push all the items (as you go) into a new array, this will be your flipped array. \ No newline at end of file diff --git a/exercises/08.1-Mixed-array/README.es.md b/exercises/08.1-Mixed-array/README.es.md index ab48d4e1..6df05356 100644 --- a/exercises/08.1-Mixed-array/README.es.md +++ b/exercises/08.1-Mixed-array/README.es.md @@ -1,8 +1,11 @@ -# `08.01` Mixed Array +# `08.01` Array mixto -Escribe una función que imprima automáticamente en la consola los tipos de valores que contiene la lista en cada posición. +## :pencil: Instrucciones: + +1. Escribe una función que imprima automáticamente en la consola los tipos de valores que contiene la lista en cada posición. + +### Resultado esperado: -The console must have something like this: ```md number boolean @@ -15,8 +18,12 @@ object ## :bulb: Pista -1. Crea un nuevo arreglo vacio. -2. Recorre el arreglo original mediante un bucle. -3. En cada bucle, obten el tipo de elemento utilizando la función typeof. -4. Como la función typeof devuelve un string, puedes insertar ese string en el nuevo arreglo. -5. Cuando finalice el ciclo, debes tener todos los tipos encontrados en el arreglo original insertados al nuevo arreglo. \ No newline at end of file ++ Crea un nuevo arreglo vacío. + ++ Recorre el arreglo original mediante un bucle. + ++ En cada bucle, obten el tipo de elemento utilizando la función `typeof`. + ++ Como la función `typeof` devuelve un string, puedes insertar(push) ese string en el nuevo arreglo(array). + ++ Cuando finalice el bucle o loop, debes haber encontrado todos los tipos de elementos del arreglo o array original y haberlos insertados(push) en el nuevo arreglo. \ No newline at end of file diff --git a/exercises/08.1-Mixed-array/README.md b/exercises/08.1-Mixed-array/README.md index c51b5ab1..2baaee98 100644 --- a/exercises/08.1-Mixed-array/README.md +++ b/exercises/08.1-Mixed-array/README.md @@ -4,9 +4,12 @@ tutorial: https://www.youtube.com/watch?v=3o02odJhieo # `08.01` Mixed Array -Write a function to programmatically print in the console the types of the values that the list contains in each position. +## :pencil: Instructions: + +1. Write a function to programmatically print in the console the types of the values that the list contains in each position. + +### Expected Result: -The console must have something like this: ```md [ 'number', 'boolean', @@ -18,8 +21,12 @@ The console must have something like this: ## :bulb: Hint -1. Create a new empty array. -2. Loop the original array. -3. On every loop get the type of the item using the typeof function. -4. Since the typeof function return a string you can push that string to the new array. -5. when the loop finished, you should have all the types found on the original array pushed to the new array. \ No newline at end of file ++ Create a new empty array. + ++ Loop the original array. + ++ On every loop get the type of the item using the `typeof` function. + ++ Since the `typeof` function return a string you can push that string to the new array. + ++ when the loop finished, you should have all the types found on the original array pushed to the new array. \ No newline at end of file diff --git a/exercises/08.2-Count-On/README.es.md b/exercises/08.2-Count-On/README.es.md index d599c604..c7a3f05f 100644 --- a/exercises/08.2-Count-On/README.es.md +++ b/exercises/08.2-Count-On/README.es.md @@ -1,13 +1,12 @@ # `08.2` Count On + +Como viste en el último ejercicio, tu arreglo o array puede tener una mezcla de tipos de datos. -Como viste en el último ejercicio, tu arreglo puede tener una mezcla de tipos de datos. +## :pencil: Instrucciones -# :pencil: Instrucciones +1. Agrega todos los elementos con tipo de dato objeto dentro del array `hello`. -Agrega todos los elementos con tipo de dato objeto dentro del arreglo hello? -Add all the items with data-type object into the hello array? - -Aquí se explica cómo imprimir TODOS los artículos. +Aquí puedes ver cómo imprimir TODOS los elementos. ```js let myArray = [42, true, "towel", [2,1], 'hello', 34.4, {"name": "juan"}]; @@ -20,7 +19,10 @@ for(let index = 0; index < myArray.length; index++){ ## :bulb: Pista -1. Recorre el arreglo dado. -2. Agregue una condición dentro del bucle que verifique que el elemento sea un objeto. -4. Si el elemento es un objeto, se agrega al arreglo `hello`. -3. Registrar la variable hello en la consola. ++ Recorre el array dado con un loop. + ++ Agrega una condición dentro del bucle(loop) que verifique que el elemento sea un objeto. + ++ Si el elemento es un objeto, se agrega al arreglo `hello`. + ++ Usa `console.log()`para imprimir el array `hello` en la consola. diff --git a/exercises/08.2-Count-On/README.md b/exercises/08.2-Count-On/README.md index e8c86258..6d1bc8cd 100644 --- a/exercises/08.2-Count-On/README.md +++ b/exercises/08.2-Count-On/README.md @@ -2,9 +2,9 @@ As you saw in the last exercise your array can be a mix types of data. -# :pencil: Instructions +## :pencil: Instrucciones: -Add all the items with data-type object into the hello array? +1. Add all the items with data-type object into the `hello` array. Here is how to print ALL the items. @@ -17,9 +17,12 @@ for(let index = 0; index < myArray.length; index++){ } ``` -## :bulb: Hint +## :bulb: Hint: -1. Loop the given array -2. Add a condition inside the loop that checks for the item to be an object. -4. If the item is an object, added to the `hello` array. -3. Console log the variable hello ++ Loop the given array. + ++ Add a condition inside the loop that checks for the item to be an object. + ++ If the item is an object, added to the `hello` array. + ++ Console log the array `hello`. diff --git a/exercises/08.3-Sum-all-items/README.es.md b/exercises/08.3-Sum-all-items/README.es.md index 15160688..2a00447c 100644 --- a/exercises/08.3-Sum-all-items/README.es.md +++ b/exercises/08.3-Sum-all-items/README.es.md @@ -1,17 +1,25 @@ -# `08.3` Sum All Items +# `08.3` Suma todos los elementos -Usando el bucle (loop) for, complete el código de la función `sum` para que devuelva la suma de todos los elementos en un arreglo dado, por ejemplo: +## :pencil: Instrucciones: + + +1. Usando un bucle (loop) `for`, completa el código de la función `sum` para que devuelva la suma de todos los elementos en un arregloarrayy dado, por ejemplo: ```js console.log(sumTheElements([2,13,34,5])) -//this should print 54 +//el resultado debiese ser 54 ``` -El resultado debe ser 925960 +### Resultado esperado: + + 925960 + +# :bulb: Pista: + ++ Inicializa una variable `total` en 0. + ++ Recorre todo el arreglo. -# :bulb: Pista ++ En cada bucle, agrega el valor de cada elemento en la variable `total`. -1. Inicialice una variable `total` en 0. -2. Recorre todo el arreglo. -3. En cada bucle, agregue el valor de cada elemento en la variable `total`. -4. Devuelve la variable total (fuera del bucle pero dentro de la función). \ No newline at end of file ++ Devuelve la variable `total` (fuera del bucle pero dentro de la función). \ No newline at end of file diff --git a/exercises/08.3-Sum-all-items/README.md b/exercises/08.3-Sum-all-items/README.md index 9425d965..0442a3a6 100644 --- a/exercises/08.3-Sum-all-items/README.md +++ b/exercises/08.3-Sum-all-items/README.md @@ -1,17 +1,24 @@ # `08.3` Sum All Items -Using a for loop, complete the code of the function `sum` so that it returns the sum of all the items in a given array, for example: +## :pencil: Instructions: + +Using a `for` loop, complete the code of the function `sum` so that it returns the sum of all the items in a given array, for example: ```js console.log(sumTheElements([2,13,34,5])) //this should print 54 ``` -The result should be 925960 +### Expected result: + +925960 + +# :bulb: Hint: + ++ Initilize a variable `total` at 0. + ++ Loop the entire array. -# :bulb: Hint ++ On every loop add the value of each item into the `total` variable. -1. Initilize a variable `total` at 0. -2. Loop the entire array. -3. On every loop add the value of each item into the `total` variable. -4. Return the total variable (outside of the loop but inside of the function). \ No newline at end of file ++ Return the `total` variable (outside of the loop but inside of the function). \ No newline at end of file diff --git a/exercises/09-forEach-loop/README.es.md b/exercises/09-forEach-loop/README.es.md new file mode 100644 index 00000000..852fcad3 --- /dev/null +++ b/exercises/09-forEach-loop/README.es.md @@ -0,0 +1,26 @@ +# `09.1` Bucle/loop forEach + +En lugar de usar la clásica declaración `for`, hay una nueva forma de recorrer los arreglos: [ higher order functions (funciones de orden superior) ](https://www.youtube.com/watch?v=rRgD1yVwIvE) + +Es posible recorrer un arreglo usando la función `array.forEach`. Debes especificar qué hacer en cada iteración del bucle. + +```js +myArray.forEach(function(item, index, arr){ + +}); +/** + * item: valor del elemento específico (requerido). + * index: índice del elemento (opcional). + * arr: objeto array al cual pertenece el elemento (opcional). +*/ +``` + +## :pencil: Instrucciones: + +En este momento, el código está imprimiendo todos los elementos en el arreglo o array: + +1. Cambia el código de la función para imprimir solo los números divisibles por 14. + +## :bulb: Pista: + +Un número X es divisible por 2 si: (X%2===0) \ No newline at end of file diff --git a/exercises/09.1-forEach-loop/README.md b/exercises/09-forEach-loop/README.md similarity index 53% rename from exercises/09.1-forEach-loop/README.md rename to exercises/09-forEach-loop/README.md index 6fdf0de3..897dfdd9 100644 --- a/exercises/09.1-forEach-loop/README.md +++ b/exercises/09-forEach-loop/README.md @@ -5,20 +5,24 @@ Instead of using the classic `for` statement, there is a new way to loop arrays It is possible to loop an array using the `array.forEach` function. You have to specify what to do on each iteration of the loop. ```js -/** - * item: will be the value of the specific item. - * index: will be the item index. - * arr: will be the -*/ myArray.forEach(function(item, index, arr){ }); +/** + * item: will be the value of the specific item (required). + * index: will be the item index(optional). + * arr: will be the array object to which the element belongs to (opcional). +*/ + + ``` -# :pencil: Instructions +## :pencil: Instructions: + +Right now, the code is printing all the items in the array: -Right now, the code is printing all the items in the array. Please change the function code to print only the numbers divisible by 14. +1. Please change the function code to print only the numbers divisible by 14. -## :bulb: HINT +## :bulb: Hint: A number X is divisible by 2 if: (X%2===0) \ No newline at end of file diff --git a/exercises/09.1-forEach-loop/app.js b/exercises/09-forEach-loop/app.js similarity index 100% rename from exercises/09.1-forEach-loop/app.js rename to exercises/09-forEach-loop/app.js diff --git a/exercises/09.1-forEach-loop/tests.js b/exercises/09-forEach-loop/tests.js similarity index 100% rename from exercises/09.1-forEach-loop/tests.js rename to exercises/09-forEach-loop/tests.js diff --git a/exercises/09.1-forEach-loop/README.es.md b/exercises/09.1-forEach-loop/README.es.md deleted file mode 100644 index b25d2d8e..00000000 --- a/exercises/09.1-forEach-loop/README.es.md +++ /dev/null @@ -1,24 +0,0 @@ -# `09.1` forEach Loop - -En lugar de usar la clásica declaración `for`, hay una nueva forma de recorrer los arreglos llamados [(funciones de orden superior) higher order functions](https://www.youtube.com/watch?v=rRgD1yVwIvE) - -Es posible recorrer un arreglo usando la función `array.forEach`. Debes especificar qué hacer en cada iteración del bucle. - -```js -/** - * item: will be the value of the specific item. - * index: will be the item index. - * arr: will be the -*/ -myArray.forEach(function(item, index, arr){ - -}); -``` - -# :pencil: Instrucciones - -En este momento, el código está imprimiendo todos los elementos en el arreglo. Cambia el código de la función para imprimir solo los números divisibles por 14. - -## :bulb: Pista - -Un número X es divisible por 2 si: (X%2===0) \ No newline at end of file diff --git a/exercises/10-Everything-is-awesome/README.es.md b/exercises/10-Everything-is-awesome/README.es.md new file mode 100644 index 00000000..543efe8c --- /dev/null +++ b/exercises/10-Everything-is-awesome/README.es.md @@ -0,0 +1,13 @@ +# `10` Todo es increíble + +## 📝 Instrucciones: + +1. Compara el elemento. Si es `1`, pone el número en el arreglo `return_array`. + +2. Compara el elemento si es `0`, pone "Yahoo" en el arreglo o array `return_array` (en lugar del número) + +Ejemplo de la salida para [0,0,1,1,0]: + +```bash +['Yahoo','Yahoo','1','1','Yahoo'] +``` \ No newline at end of file diff --git a/exercises/10-Everything-is-awesome/README.md b/exercises/10-Everything-is-awesome/README.md new file mode 100644 index 00000000..964c11a7 --- /dev/null +++ b/exercises/10-Everything-is-awesome/README.md @@ -0,0 +1,13 @@ +# `10` Everything is awesome + +# 📝 Instructions: + +1. Compare the item. If it is `1` push the number to the array `return_array`. + +2. Compare the item if it is 0 push "Yahoo" to the array `return_array` (instead of the number) + +Example output for [0,0,1,1,0]: + +```bash +['Yahoo','Yahoo','1','1','Yahoo'] +``` \ No newline at end of file diff --git a/exercises/10.1-Everything-is-awesome/app.js b/exercises/10-Everything-is-awesome/app.js similarity index 100% rename from exercises/10.1-Everything-is-awesome/app.js rename to exercises/10-Everything-is-awesome/app.js diff --git a/exercises/10.1-Everything-is-awesome/test.js b/exercises/10-Everything-is-awesome/test.js similarity index 100% rename from exercises/10.1-Everything-is-awesome/test.js rename to exercises/10-Everything-is-awesome/test.js diff --git a/exercises/10.1-Everything-is-awesome/README.es.md b/exercises/10.1-Everything-is-awesome/README.es.md deleted file mode 100644 index 5c3e94a6..00000000 --- a/exercises/10.1-Everything-is-awesome/README.es.md +++ /dev/null @@ -1,13 +0,0 @@ -# `10.1` Everything is awesome - -## 📝 Instrucciones - -Compara el elemento si es 1, inserta el número en el arreglo return_array - -Compara el elemento si es 0, introduce "Yahoo" en el arreglo return_array (en lugar del número) - -Ejemplo de la salida para [0,0,1,1,0]: - -```bash -['Yahoo','Yahoo','1','1','Yahoo'] -``` \ No newline at end of file diff --git a/exercises/10.1-Everything-is-awesome/README.md b/exercises/10.1-Everything-is-awesome/README.md deleted file mode 100644 index 906572a3..00000000 --- a/exercises/10.1-Everything-is-awesome/README.md +++ /dev/null @@ -1,13 +0,0 @@ -# `10.1` Everything is awesome - -# 📝 Instructions - -Compare the item if it is 1 push the number to the array return_array - -Compare the item if it is 0 push "Yahoo" to the array return_array (instead of the number) - -Example output for [0,0,1,1,0]: - -```bash -['Yahoo','Yahoo','1','1','Yahoo'] -``` \ No newline at end of file diff --git a/exercises/11-Do-while/README.es.md b/exercises/11-Do-while/README.es.md index 2a80f1d2..338b85cc 100644 --- a/exercises/11-Do-while/README.es.md +++ b/exercises/11-Do-while/README.es.md @@ -1,27 +1,28 @@ # `11` DO DO DO -El do{}while(); es otro ejemplo de bucle(loop) en javascript que se usa con menos frecuencia pero es un bucle +El `do{}while()`; es otro ejemplo de bucle(loop) en javascript que se usa con menos frecuencia pero es un bucle. ```js -// stating value for the loop: +// declarando el valor para el loop o bucle: let i = 0; -// the loop will do everything inside of the do code block +// el loop hará todo dentro del bloque de código do { - // print out the i value + // imprime el valor de i console.log(i) - // increase the i value + // aumenta el valor de i i++ - // evaluate the value + // evalúa el valor de i } while (i < 5); ``` -# 📝 Instrucciones +## 📝 Instrucciones: -Imprima cada número de iteración en la consola del 20 al 0, pero concatene un signo de exclamación a la salida si el número es un multiplo de 5 -Al final console.log () "LIFTOFF" +1. Imprime cada número de la iteración en la consola del 20 al 0, pero concaténale un signo de exclamación(`!`) al elemento si el número es un multiplo de 5. -Example Output on the console: +2. Al final haz un `console.log()`de "LIFTOFF" + +### Resultado esperado: ```md 20! diff --git a/exercises/11-Do-while/README.md b/exercises/11-Do-while/README.md index 215c24d7..544a046e 100644 --- a/exercises/11-Do-while/README.md +++ b/exercises/11-Do-while/README.md @@ -1,6 +1,6 @@ # `11` DO DO DO -The do{}while(); is another loop example in javascript is less commonly used but it is a loop +The `do{}while()`; is another loop example in javascript is less commonly used but it is a loop. ```js // stating value for the loop: @@ -12,16 +12,17 @@ do { console.log(i) // increase the i value i++ - // evaluate the value + // evaluate the value of i } while (i < 5); ``` -# 📝 Instructions +## 📝 Instructions: -Print every iteration number on the console from 20 to 0 but concatenate an exclamation point to the output if the number is a module of 5 -At the end console.log() "LIFTOFF" +1. Print every iteration number on the console from 20 to 0 but concatenate an exclamation point to the output if the number is a module of 5. -Example Output on the console: +2. At the end `console.log()`de LIFTOFF" + +### Expected result: ```md 20! diff --git a/exercises/12-Delete-element/README.es.md b/exercises/12-Delete-element/README.es.md index 279a4fea..98d24607 100644 --- a/exercises/12-Delete-element/README.es.md +++ b/exercises/12-Delete-element/README.es.md @@ -1,4 +1,17 @@ -La única forma de eliminar a Daniella del arreglo (sin hacer trampa) será crear un nuevo arreglo con todas las demás personas, excepto Daniella. +# `12` Eliminar el elemento -Instrucciones -Crea una función deletePerson que elimine a cualquier persona del arreglo y devuelve un nuevo arreglo sin esa persona. \ No newline at end of file +La única forma de eliminar a `Daniella` del array o arreglo (sin hacer trampa) será crear un nuevo arreglo con todas las demás personas, excepto Daniella. + +## 📝Instrucciones: + +1. Crea una función `deletePerson` que elimine a cualquier persona del arreglo y devuelva un nuevo arreglo sin esa persona. + +### Resultado esperado: + + + ```js + + ['juan', 'ana', 'michelle', 'stefany', 'lucy', 'barak'] +['ana', 'michelle', 'daniella', 'stefany', 'lucy', 'barak'] +['juan', 'ana', 'michelle', 'daniella', 'stefany', 'lucy', 'barak'] +``` diff --git a/exercises/12-Delete-element/README.md b/exercises/12-Delete-element/README.md index 15f9bb80..8f7db68e 100644 --- a/exercises/12-Delete-element/README.md +++ b/exercises/12-Delete-element/README.md @@ -1,15 +1,15 @@ # `12` Delete element -The only way to delete `Daniella` from the list (without cheating) -will be to create a new list with all the other people but Daniella. +The only way to delete `Daniella` from the array (without cheating) will be to create a new list with all the other people but Daniella. -# 📝Instructions -1. Please create a `deletePerson` function that deletes any given person from the list - and returns a new list without that person. +## 📝Instructions: +1. Please create a `deletePerson` function that deletes any given person from the array and returns a new array without that person. + +### Expected result: ```js - Result: + ['juan', 'ana', 'michelle', 'stefany', 'lucy', 'barak'] ['ana', 'michelle', 'daniella', 'stefany', 'lucy', 'barak'] ['juan', 'ana', 'michelle', 'daniella', 'stefany', 'lucy', 'barak'] diff --git a/exercises/13-Merge-arrays/README.es.md b/exercises/13-Merge-arrays/README.es.md index 32dcbdd9..23d27c61 100644 --- a/exercises/13-Merge-arrays/README.es.md +++ b/exercises/13-Merge-arrays/README.es.md @@ -1,7 +1,18 @@ -Como vivimos en un mundo nuevo, no debería haber colores ni etiquetas, ¿verdad? +# `13` Merge array: -Instrucciones -Escribe una función que combine dos arreglos y retorne un único arreglo nuevo que combine todos los valores de ambos arreglos. +Como vivimos en un mundo nuevo, no debería haber colores ni etiquetas, ¿cierto? -Pista: -Tendrás que recorrer cada arreglo e insertar sus elementos en un nuevo arreglo. \ No newline at end of file +## 📝Instrucciones: + +1. Escribe una función que combine dos arreglos y retorne un único arreglo nuevo que combine todos los valores de ambos arreglos. + +### Resultado esperado: + +```js + + ['Lebron', 'Aaliyah', 'Diamond', 'Dominique', 'Aliyah', 'Jazmin', 'Darnell', 'Lucas', 'Jake', 'Scott', 'Amy', 'Molly', 'Hannah', 'Lucas'] +``` + +### 💡 Pista: + ++ Tendrás que recorrer cada arreglo e insertar sus elementos en un nuevo arreglo. \ No newline at end of file diff --git a/exercises/13-Merge-arrays/README.md b/exercises/13-Merge-arrays/README.md index 7acccf35..32879bca 100644 --- a/exercises/13-Merge-arrays/README.md +++ b/exercises/13-Merge-arrays/README.md @@ -1,14 +1,18 @@ -# `13` Merge array: +# `13` Uniendo arrays: Since we live in a new world, there should be no colors or labels, right? -# 📝Instructions -Write a function that merges two array and returns a single new array with all the items from both arrays inside. +## 📝Instructions: + +1. Write a function that merges two array and returns a single new array with all the items from both arrays inside. + +### Expected result: ```js -// The console output expected: + ['Lebron', 'Aaliyah', 'Diamond', 'Dominique', 'Aliyah', 'Jazmin', 'Darnell', 'Lucas', 'Jake', 'Scott', 'Amy', 'Molly', 'Hannah', 'Lucas'] ``` -💡HINT: -- You will have to loop though each array and insert their items into a new array. \ No newline at end of file +### 💡 Hint: + ++ You will have to loop though each array and insert their items into a new array. \ No newline at end of file diff --git a/exercises/14-Divide-and-Conquer/README.es.md b/exercises/14-Divide-and-Conquer/README.es.md index 54708cec..2a26038e 100644 --- a/exercises/14-Divide-and-Conquer/README.es.md +++ b/exercises/14-Divide-and-Conquer/README.es.md @@ -1,19 +1,28 @@ -# Instrucciones -- Crea una función llamada mergeTwoList que reciba un arreglo de números (enteros). -- Recorre el arreglo y separa los números pares e impares en diferentes arreglos. -- Si el número es impar, envíalo a un arreglo denominado odd. -- Si el número es par, envíalo a un arreglo denominado even. -- Luego concatena el arreglo odd al arreglo even para combinarlos. +# `14` Divide y conquista -> Recuerda que el arreglo `odd` va primero y luego debes agregar lots items del arreglo `even`. +## 📝 Instrucciones: -## Example: +1. Crea una función llamada `mergeTwoList` que reciba un arreglo de números (enteros). + +2. Recorre el arreglo y separa los números pares e impares en diferentes arreglos. + +3. Si el número es impar, envíalo a un arreglo denominado `odd`. + +4. Si el número es par, envíalo a un arreglo denominado `even`. + +5. Luego concatena el arreglo `odd` al arreglo `even` para combinarlos. + +> Recuerda que el arreglo `odd` va primero y luego debes agregar los items del arreglo `even`. + +Ejemplo: ```js mergeTwoList([1,2,33,10,20,4]); +// resultado esperado en la consola: [1, 33, 2, 10, 20, 4] ``` -### Pista: -Cree variables vacías cuando necesites almacenar datos. \ No newline at end of file +### 💡 Pista: + ++ Crea variables vacías cuando necesites almacenar datos. \ No newline at end of file diff --git a/exercises/14-Divide-and-Conquer/README.md b/exercises/14-Divide-and-Conquer/README.md index 5da2a60a..4c7c2b43 100644 --- a/exercises/14-Divide-and-Conquer/README.md +++ b/exercises/14-Divide-and-Conquer/README.md @@ -1,22 +1,28 @@ -# `14` Divide and conquer: +# `14` Divide and conquer + +## 📝 Instructions: -## 📝Instructions 1. Create a function called `mergeTwoList` that expects an array of numbers (integers). -2. Loop through the array and separate the odd and the even numbers in different lists. -3. If the number is odd number push it to a placeholder array named odd. -4. If the number is even number push it to a placeholder array named even. + +2. Loop through the array and separate the odd and the even numbers in different arrays. + +3. If the number is odd number push it to a placeholder array named `odd`. + +4. If the number is even number push it to a placeholder array named `even`. + 5. Then concatenate the `odd` array to the `even` array (combine them). -> Remember, the odd array comes first and you have to append the even mergeTwoList. +> Remember, the `odd` array comes first and you have to append the `even`. + +Ejemplo: ```js -Example: mergeTwoList([1,2,33,10,20,4]) // expected console output [1, 33, 2, 10, 20, 4] ``` -### 💡 Hints: +### 💡 Hint: -Create empty(placeholder) variables when you need to store data. \ No newline at end of file ++ Create empty(placeholder) variables when you need to store data. \ No newline at end of file diff --git a/exercises/15-Max-integer-from-array/README.es.md b/exercises/15-Max-integer-from-array/README.es.md index 1a66867b..b6a07351 100644 --- a/exercises/15-Max-integer-from-array/README.es.md +++ b/exercises/15-Max-integer-from-array/README.es.md @@ -1,8 +1,21 @@ -El máximo número entero dentro del arreglo +# `15` El máximo número entero dentro del arreglo -Escribe un script que encuentre el número entero más grande en myArray e imprima ese número en la consola con la función console.log. +## 📝Instrucciones: -Pista: -Define una variable auxiliar y establezca el primer valor en 0, luego compara las variables con todos los elementos del arreglo. Reemplaza el valor cada vez que el nuevo elemento sea más grande que el almacenado en la variable auxiliar. Al final tendrá el mayor número almacenado en la variable. +1. Escribe un script que encuentre el número entero más grande en `myArray`. -Su resultado debe ser 5435. \ No newline at end of file +2. Imprime ese número en la consola con la función `console.log()`. + +### 💡 Pista: + +- Define una variable auxiliar y establece el primer valor en 0, + +- Luego compara las variables con todos los elementos del arreglo. + +- Reemplaza el valor cada vez que el nuevo elemento sea más grande que el almacenado en la variable auxiliar. + +- Al final tendrá el mayor número almacenado en la variable. + +### Resultado esperado: + + 5435 \ No newline at end of file diff --git a/exercises/15-Max-integer-from-array/README.md b/exercises/15-Max-integer-from-array/README.md index 1940b566..74bd3a21 100644 --- a/exercises/15-Max-integer-from-array/README.md +++ b/exercises/15-Max-integer-from-array/README.md @@ -1,16 +1,22 @@ -# `15` Max integer from my_list +# `15` Max integer from the array -# 📝Instructions -1. Write a script that finds the biggest integer in list +## 📝Instructions: + +1. Write a script that finds the biggest integer in `Myarray`. + 2. Print that number in the console with the `console.log()` function. -💡Hint: +### 💡 Hint: + - Define an auxiliar variable and set the first value to 0. + - Then compare the variables with all the items in the list. + - Replace the value every time the new element is bigger than the one stored in the auxiliar variable. + - At the end you will have the biggest number stored in the variable. - ```js -Your result should be 5435. -``` \ No newline at end of file +### Expected result: + + 5435 diff --git a/exercises/16-Foreach-min-val/README.es.md b/exercises/16-Foreach-min-val/README.es.md index 718bb224..400eff5e 100644 --- a/exercises/16-Foreach-min-val/README.es.md +++ b/exercises/16-Foreach-min-val/README.es.md @@ -1,18 +1,32 @@ -Es posible atravesar una arreglo usando la función array.forEach; debes especificar qué hacer en cada iteración del bucle. +# `16` Número entero menor: -//item will be the value of the specific item. -//index will be the item index. -//arr will be the -myArray.forEach(function(item, index, arr){ - console.log(item, index); +Es posible recorrero una arreglo usando la función `array.forEach`. Debes especificar qué hacer en cada iteración del bucle. +```js +myArray.forEach(function(item, index, arr){ + console.log(item, index) +//item es el valor específico del elemento. +//index será el índice del elemento. +//arr será el array al cual pertenece el elemento. }); -Instrucciones -Utiliza la función forEach para obtener el valor mínimo del arreglo e imprimirlo en la consola. -Pista -1) Declarar una variable global auxiliar -2) Establece un valor de un entero muy grande -3) Cada vez que realices un loop(bucle), compara su valor con el valor del elemento, si el valor del elemento es menor, actualiza el valor de la variable auxiliar al valor del elemento. -4) Fuera del bucle, una vez finalizado el bucle, imprima el valor auxiliar. +``` +## 📝 Instrucciones: + +1. Utiliza la función `forEach` para obtener el valor mínimo del arreglo e imprimirlo en la consola. + +### 💡 Pista: + +- Declarar una variable global auxiliar + +- Establece un valor de un número entero muy grande. + +- Cada vez que realices un loop(bucle), compara su valor con el valor del numero entero grande, si el valor del elemento es menor, actualiza el valor de la variable auxiliar al valor del elemento. + +- Fuera del bucle, una vez finalizado el bucle, imprima el valor auxiliar. + +### Resultado esperado: + +23 + diff --git a/exercises/16-Foreach-min-val/README.md b/exercises/16-Foreach-min-val/README.md index a3a8b889..fd774d9a 100644 --- a/exercises/16-Foreach-min-val/README.md +++ b/exercises/16-Foreach-min-val/README.md @@ -1,28 +1,37 @@ + # `16` Minimum integer: -It is possible to traverse an array using the array.forEach function. -You have to specify what to do on each iteration of the loop. +It is possible to traverse an array using the `array.forEach` function. You have to specify what to do on each iteration of the loop. ```js + +myArray.forEach(function(item, index){ + console.log(item, index) //item will be the value of the specific item. //index will be the item index. -myArray.forEach(function(item, index){ - console.log(item, index); - +//arr will be the array object to which the element belongs to. }); + + ``` -# 📝Instructions -1. Please use the forEach function to get the minimum value of the array and print it in the console. +## 📝 Instructions: + +1. Please use the `forEach` function to get the minimum value of the array and print it in the console. + +### 💡 Hint: -## 💡Hints: - Declare an auxiliar global variable + - Set its value to a very big integer + - Every time you loop compare its value to the item value, if the item value is smaller update the auxiliar variable value to the item value. + - Outside of the loop, after the loop is finished, print the auxiliar value. -```js -expected: 23 -``` \ No newline at end of file + +### Expected result: + + 23 diff --git a/exercises/17-The-for-loop/README.es.md b/exercises/17-The-for-loop/README.es.md index bf864aa8..da9b4e1b 100644 --- a/exercises/17-The-for-loop/README.es.md +++ b/exercises/17-The-for-loop/README.es.md @@ -1,11 +1,23 @@ -Otra forma de recorrer un arreglo con el loop for es usando la instrucción IN de esta manera: +# `17` Un For Loop para encontrar un promedio +Otra forma de recorrer un arreglo con el loop `for` es usando la declaración`in` de esta manera: + +```js for (var index in myArray){ console.log(myArray[index]); } +``` + +## 📝 Instrucciones: + +1. Calcula el valor promedio de todos los elementos del arreglo. + +2. Imprímelo en la consola. + +### 💡 Pista: + +Para imprimir el promedio, debes sumar todos los valores y dividir el resultado por la longitud (length) total del arreglo. -Instrucciones -Calcula el valor promedio de todos los elementos del arreglo e imprímalo en la consola. +### Resultado esperado: -Pista: -Para imprimir el promedio, debes agregar todos los valores y dividir el resultado por la longitud total del arreglo. \ No newline at end of file +27278.8125 \ No newline at end of file diff --git a/exercises/17-The-for-loop/README.md b/exercises/17-The-for-loop/README.md index 8377b4a0..f1072f7b 100644 --- a/exercises/17-The-for-loop/README.md +++ b/exercises/17-The-for-loop/README.md @@ -1,21 +1,27 @@ # `17` The For Loop Find average -Another way to loop an array with the for loop will be using the IN statement like this: +Another way to loop an array with the `for` loop will be using the `in` statement like this: + ```js for (var index in myArray){ console.log(myArray[index]); } ``` -# 📝Instructions -1. Declare a variable with value 0. +## 📝 Instructions: -## #$# 💡HINT: -To print the average, you have to add all the values and divide the result -by the total length of the list. +1. Calculate the average value of all the items in the array + +2. Print it on the console. + +### 💡 Hint: + +To print the average, you have to add all the values and divide the result by the total length of the list. + + +### Expected result: -```js -// The result should be: 27278.8125 -Calculate the average value of all the items in the array and print it on the console. + + diff --git a/exercises/18-Nested-arrays/README.es.md b/exercises/18-Nested-arrays/README.es.md index 7565e773..c05d5712 100644 --- a/exercises/18-Nested-arrays/README.es.md +++ b/exercises/18-Nested-arrays/README.es.md @@ -1,18 +1,21 @@ +# `18` Arrays/arreglos anidados + Es posible encontrar un arreglo compuesto por otros arreglos (se llama arreglo o arreglo de dos dimensiones). -En este ejemplo, tenemos una serie de coordenadas a las que puedes acceder haciendo lo siguiente: +En este ejemplo, tenemos una array o arreglo de coordenadas a las que puedes acceder haciendo lo siguiente: ```js -//The first coordinate latitude +//la primera coordenada latitud var latitude = coordinatesArray[0][0]; -//The first coordinate longitude +//la primera coordenada longitud var longitude = coordinatesArray[0][1]; ``` -Instrucciones: -Recorre el arreglo imprimiendo solo las longitudes. +## 📝 Instruciones: + +1. Recorre el arreglo(con un bucle) imprimiendo solo las longitudes. -El resultado debería ser algo como esto: +### Resultado esperado: ```md -112.633853 diff --git a/exercises/18-Nested-arrays/README.md b/exercises/18-Nested-arrays/README.md index 11803fb3..a132931d 100644 --- a/exercises/18-Nested-arrays/README.md +++ b/exercises/18-Nested-arrays/README.md @@ -11,10 +11,12 @@ var latitude = coordinatesArray[0][0]; var longitude = coordinatesArray[0][1]; ``` -# 📝Instructions: -Loop through the array printing only the longitudes. +## 📝 Instructions: -The result should be something like this: +1. Loop through the array printing only the longitudes. + + +### Expected Result: ```md -112.633853 diff --git a/exercises/19-And-One-and-a-Two-and-a-Three/README.es.md b/exercises/19-And-One-and-a-Two-and-a-Three/README.es.md index 700ce5f9..d83539d9 100644 --- a/exercises/19-And-One-and-a-Two-and-a-Three/README.es.md +++ b/exercises/19-And-One-and-a-Two-and-a-Three/README.es.md @@ -1,14 +1,22 @@ -Instrucciones -Dado un objeto denominado contact, repite todas sus propiedades y valores e imprímalos en la consola. -Tendrás que recorrer sus propiedades para poder imprimirlas. +# `19` Y uno y dos y tres + + +## 📝 Instrucciones: + +Dado un objeto denominado contact: + +1. Repite todas sus propiedades y valores e imprímelos en la consola. Tendrás que recorrer (con un loop) sus propiedades para poder imprimirlas. + +### Resultado esperado: -Salida de consola esperada: ```md fullname : John Doe phone : 123-123-2134 email : test@nowhere.com ``` -Pista -MDN for in loop reference +### :bulb: Pista: + +Lee sobre los bucles/loops: + https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Loops_and_iteration#for...in_statement \ No newline at end of file diff --git a/exercises/19-And-One-and-a-Two-and-a-Three/README.md b/exercises/19-And-One-and-a-Two-and-a-Three/README.md index b19351aa..5bf8cbf8 100644 --- a/exercises/19-And-One-and-a-Two-and-a-Three/README.md +++ b/exercises/19-And-One-and-a-Two-and-a-Three/README.md @@ -1,9 +1,12 @@ # `19` And one and two and three -# 📝Instruction -- Given a contact object, please loop all its properties and values and print them on the console. -- You will have to loop its properties to be able to print them -Expected console output: +## 📝 Instructions: + +Given a contact object: + +1. Please loop all its properties and values and print them on the console.You will have to loop its properties to be able to print them + +### Expected result: ```md fullname : John Doe @@ -11,6 +14,8 @@ phone : 123-123-2134 email : test@nowhere.com ``` -💡Hints -MDN for in loop reference +### 💡 Hint: + +MDN for in loop reference: + https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Loops_and_iteration#for...in_statement \ No newline at end of file diff --git a/exercises/19-And-One-and-a-Two-and-a-Three/app.js b/exercises/19-And-One-and-a-Two-and-a-Three/app.js index 7da49b00..5c0edf6d 100644 --- a/exercises/19-And-One-and-a-Two-and-a-Three/app.js +++ b/exercises/19-And-One-and-a-Two-and-a-Three/app.js @@ -3,6 +3,7 @@ let contact = { phone: "321-321-4321", email: "test@test.com" } -for(et key in contact){ +for(let key in contact){ // Code goes here -} \ No newline at end of file +} + diff --git a/exercises/20.1-Map-an-array/README.es.md b/exercises/20.1-Map-an-array/README.es.md index 94ae4403..021adaf1 100644 --- a/exercises/20.1-Map-an-array/README.es.md +++ b/exercises/20.1-Map-an-array/README.es.md @@ -1,6 +1,8 @@ -La función Array.map () es una de las funciones más utilizadas en Javascript. Es sorprendente porque te permite crear un nuevo arreglo utilizando cada elemento del arreglo original como semilla. +# `20.1` Mapea un array -En este ejemplo, estamos utilizando la función de map para crear un nuevo arreglo de horas civiles a partir de un arreglo determinado de horas militares. +La función `Array.map()` es una de las funciones más utilizadas en Javascript. Es sorprendente porque te permite crear un nuevo arreglo utilizando cada elemento del arreglo original como semilla. + +En este ejemplo, estamos utilizando la función de `map` para crear un nuevo arreglo de horas civiles a partir de un arreglo determinado de horas militares. ```js // Dado un arreglo de horas militares @@ -14,17 +16,20 @@ var militaryToCivilian = function(hour){ else return hour + "am"; } -// puedes crear una nueva hora civil mapeando el arreglo original pero pasando la función militaryToCivilian a la función map +//puedes crear una nueva hora civil mapeando el arreglo original pero pasando la función militaryToCivilian a la función map var civilianHours = militaryHours.map(militaryToCivilian); console.log(civilianHours); ``` -Copie y pegue el código dentro del editor de código para probarlo si lo desea. +Copia y pega el código dentro del editor de código para probarlo si quieres. + +## 📝 Instrucciones: + +1. Usando la misma lógica dada en el ejemplo, agrega el código necesario para convertir un arreglo de valores `Celsius` en `Fahrenheit` dentro de la función de `map`. + +## 💡 Pista: -Instrucciones -Usando la misma lógica dada en el ejemplo, agrega el código necesario para convertir un arreglo de valores Celsius en Fahrenheit dentro de la función de map. +Aquí hay un video de 3:40 min que explica la función del map: -Pista -Aquí hay un video de 3:40 min que explica la función del map https://www.youtube.com/watch?v=hfYa4ugeyuc&t=32s \ No newline at end of file diff --git a/exercises/20.1-Map-an-array/README.md b/exercises/20.1-Map-an-array/README.md index ca046b4e..50653904 100644 --- a/exercises/20.1-Map-an-array/README.md +++ b/exercises/20.1-Map-an-array/README.md @@ -1,9 +1,9 @@ # `20.1` Map an array -The Array.map() function is one of the most used functions in Javascript. +The `Array.map()` function is one of the most used functions in Javascript. It is amazing because it lets you create a new array using each item of the original array as a seed. -In this example, we are using the map function to create a new array of +In this example, we are using the `map` function to create a new array of civilian hours starting from a given array of military hours. ```js @@ -26,9 +26,12 @@ console.log(civilianHours); Copy paste the code inside the code editor to test it if you want. -# 📝Instructions: -Using the same logic given in the example, add the needed code to convert an array of Celsius values into Fahrenheit inside the map function. +## 📝 Instructions: + +1. Using the same logic given in the example, add the needed code to convert an array of `Celsius` values into `Fahrenheit` inside the `map` function. + +## 💡 Hint: + +Here is a 3:40 min video explaining the array map function: -## 💡Hints -Here is a 3:40 min video explaining the array map function https://www.youtube.com/watch?v=hfYa4ugeyuc&t=32s \ No newline at end of file diff --git a/exercises/20.2-More-mapping/README.es.md b/exercises/20.2-More-mapping/README.es.md index 4c0cf19f..18f977cc 100644 --- a/exercises/20.2-More-mapping/README.es.md +++ b/exercises/20.2-More-mapping/README.es.md @@ -1,4 +1,7 @@ +# `20.2` Sigamos "mapeando" + El método array.map llama a una función para cada valor en un arreglo y luego genera un nuevo arreglo con los valores modificados. + ```js incrementByOne = function (number) { return number + 1; @@ -6,20 +9,21 @@ incrementByOne = function (number) { var myArray = [1, 2, 3, 4]; -myArray.map(incrementByOne); //returns [2, 3, 4, 5] +myArray.map(incrementByOne); //devuelve [2, 3, 4, 5] ``` -Mas información sobre mapeo: -Mapping Arrays (3:44) -Understanding The Javascript Map -Instrucciones: +## 📝 Instrucciones: + +1. Crea una función llamada `myFunction` que multiplique cada número por 3. + +2. Usa la función `Array.map` para ejecutar la función `myFunction` a través de cada valor en el arreglo. + +3. Almacena el nuevo arreglo en una variable llamada `newArray` y luego imprimes el nuevo arreglo con `console.log()`. + +## 💡 Pista: -Crea una función llamada myFunction que multiplique cada número por 3. -Usa la función Array.map para ejecutar la función myFunction a través de cada valor enl arreglo. - Almacena el nuevo arreglo en una variable llamada newArray y luego imprimes el nuevo arreglo con console.log (). ++ La función tomará un parámetro con el elemento original que se transforma y se agrega en el nuevo arreglo. -Pista: -La función tomará un parámetro con el elemento original que se transforma y agrega en el nuevo arreglo. -Recuerda que tu función debe devolver cada uno de los nuevos elementos que se almacenarán en el nuevo arreglo. ++ Recuerda que tu función debe devolver cada uno de los nuevos elementos que se almacenarán en el nuevo arreglo. diff --git a/exercises/20.2-More-mapping/README.md b/exercises/20.2-More-mapping/README.md index b290c003..4a714640 100644 --- a/exercises/20.2-More-mapping/README.md +++ b/exercises/20.2-More-mapping/README.md @@ -1,7 +1,8 @@ # `20.2` More Mapping -The array.map method calls a function for each value in an array and +The `array.map` method calls a function for each value in an array and then outputs a new array with the modified values. + ```js incrementByOne = function (number) { return number + 1; @@ -12,14 +13,17 @@ var myArray = [1, 2, 3, 4]; myArray.map(incrementByOne); //returns [2, 3, 4, 5] ``` +## 📝 Instructions: + +1. Create a function named `myFunction` that will multiply each number by 3. + +2. Use the `array.map` function to run the `myFunction` function through each value in the array. + +3. Store the new array in a variable named `newArray` and `console.log()` the new array. -# 📝Instructions: +## 💡 Hint: -- Create a function named `myFunction` that will multiply each number by 3. -- Use the `array.map` function to run the `myFunction` function through each value in the array. -- Store the new array in a variable named `newArray` and `console.log()` the new array. ++ The function will take a parameter with the original item being transformed and added into the new array. -## 💡Hint: -The function will take a parameter with the original item being transformed and added into the new array. -Remember that your function must return each of the new items to be stored into the new array. ++ Remember that your function must return each of the new items to be stored into the new array. diff --git a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/README.es.md b/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/README.es.md deleted file mode 100644 index 39a31168..00000000 --- a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/README.es.md +++ /dev/null @@ -1,23 +0,0 @@ -Otra función sorprendente para los arreglos es el filtro. Repite toda el arreglo original y solo devuelve los valores que coinciden con una condición particular. - -[Aquí está la documentación de la función de filtro en w3school](https://www.w3schools.com/jsref/jsref_filter.asp) - -Por ejemplo, este algoritmo filtra el arreglo allNumbers y devuelve un nuevo arreglo con solo los números impares: - -```js -var allNumbers = [23,12,35,5,3,2,3,54,3,21,534,23,42,1]; - -var onlyOdds = allNumbers.filter(function(number){ - return (number % 2 > 0) -}); - -console.log(onlyOdds); -``` - -Instrucciones -Completa el código para que llene el arreglo resultante de Nombres con solo los nombres que comienzan con la letra R -Usa la función Array.filter - -Pista: -Aquí hay un video de 2:29min explicando array.filter -https://www.youtube.com/watch?v=0qsFDFC2oEE \ No newline at end of file diff --git a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/README.md b/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/README.md deleted file mode 100644 index f2fb4f4b..00000000 --- a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# `21` Filter an Array - -Another amazing function for arrays is `filter`. -It loops the entire original array and only returns the values that match a particular condition. - -[Here is the documentation of the filter function in w3school](https://www.w3schools.com/jsref/jsref_filter.asp) - -For example, this algorithm filters the `allNumbers` array and returns a new array with only the odds numbers: - -```js -var allNumbers = [23,12,35,5,3,2,3,54,3,21,534,23,42,1]; - -var onlyOdds = allNumbers.filter(function(number){ - return (number % 2 > 0) -}); - -console.log(onlyOdds); -``` - -# 📝Instructions -- Complete the code to make it fill the `resultingNames` array with only the names that start with letter R -- Use the `array.filter` function - -## 💡Hint -Here is a 2:29min video explaining array.filter -https://www.youtube.com/watch?v=0qsFDFC2oEE \ No newline at end of file diff --git a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/app.js b/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/app.js deleted file mode 100644 index c9218728..00000000 --- a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/app.js +++ /dev/null @@ -1,5 +0,0 @@ -let allNames = ["Romario","Boby","Roosevelt","Emiliy", "Michael", "Greta", "Patricia", "Danzalee"]; - -//your code here - -console.log(resultingNames); \ No newline at end of file diff --git a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/test.js b/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/test.js deleted file mode 100644 index 3ddb62f1..00000000 --- a/exercises/20.3-Map-with-function-inside-variable/21-Filter-an-array/test.js +++ /dev/null @@ -1,38 +0,0 @@ -const fs = require('fs'); -const path = require('path'); -const rewire = require("rewire"); - -let _log = console.log; -let _buffer = ''; -global.console.log = console.log = jest.fn((text) => _buffer += text + "\n"); - -const app_content = fs.readFileSync(path.resolve(__dirname, './app.js'), 'utf8'); - -test("You should create the variable resultingNames.", function(){ - const file = rewire("./app.js"); - const myVar = file.__get__('resultingNames'); - expect(myVar).toBeTruthy(); -}); - -test('You have to use the console.log function to print the correct output.', function () { - const app = require('./app.js'); - expect(console.log.mock.calls.length > 0).toBe(true); -}); - -test('You should use the console.log to call the variable resultingNames', function () { - const file = rewire("./app.js"); - const myVar = file.__get__('resultingNames'); - expect(console.log).toHaveBeenCalledWith(myVar); - }); - -test('The output in the console should match the one in the instructions!', function () { - const _app = rewire('./app.js'); - - let _allNames = ["Romario","Boby","Roosevelt","Emiliy", "Michael", "Greta", "Patricia", "Danzalee"]; - let _test = _allNames.filter(item=>item[0] === "R") - expect(_buffer).toMatch(_test.map(n => n).join(",")); - }); - - - - diff --git a/exercises/20.3-Map-with-function-inside-variable/README.es.md b/exercises/20.3-Map-with-function-inside-variable/README.es.md index 79bc8cf5..f722a4b4 100644 --- a/exercises/20.3-Map-with-function-inside-variable/README.es.md +++ b/exercises/20.3-Map-with-function-inside-variable/README.es.md @@ -1,9 +1,14 @@ -Los nombres de las variables contienen muchos nombres (dugh ...) +# `20.3` Map con una función dentro de una variable -La función otorgada con la variable prepender devuelve todo lo que se le pasa pero se antepone con la cadena: 'Mi nombre es:' +Los `nombres` de las variables contienen muchos nombres (obviamente ...) -Instrucciones -Asigna el arreglo de nombres utilizando la función prepender para crear un nuev arreglo que se vea así: +La función almacenada en la variable `prepender` devuelve todo lo que se le pasa pero anteponiendo el string: `'Mi nombre es:'` + +## 📝 Instrucciones: + +1. Usa el método `map` con la función `prepender` para crear un nuevo arreglo que se vea así: + +### Expected result: ```md [ 'My name is: Alice', @@ -16,5 +21,6 @@ Asigna el arreglo de nombres utilizando la función prepender para crear un nuev ``` -Pista: -Es una línea de código, ¡pasa la función map! \ No newline at end of file +### 💡 Pista: + +Es una línea de código, ¡pasa la función `map`! \ No newline at end of file diff --git a/exercises/20.3-Map-with-function-inside-variable/README.md b/exercises/20.3-Map-with-function-inside-variable/README.md index e8fd7bd5..11b0cd7f 100644 --- a/exercises/20.3-Map-with-function-inside-variable/README.md +++ b/exercises/20.3-Map-with-function-inside-variable/README.md @@ -2,11 +2,13 @@ The variable `names` contains a lot of names (dugh...) -The function stored in the variable `prepender` returns whatever -is passed to it but prepended with the string: 'My name is:' +The function stored in the variable `prepender` returns whatever is passed to it but prepended with the string: `'My name is:'` -# 📝Instructions -Please map the names array using the `prepender` function to create a new array that looks like this: +## 📝 Instructions: + +1. Please map the names array using the `prepender` function to create a new array that looks like this: + +### Resultado esperado: ```md [ 'My name is: Alice', @@ -19,5 +21,6 @@ Please map the names array using the `prepender` function to create a new array ``` -## 💡Hint: +### 💡 Hint: + It's one line of code, pass the function to the map! \ No newline at end of file diff --git a/exercises/20.4-Map-data-types/README.es.md b/exercises/20.4-Map-data-types/README.es.md index def9a25d..5a94d17d 100644 --- a/exercises/20.4-Map-data-types/README.es.md +++ b/exercises/20.4-Map-data-types/README.es.md @@ -1,13 +1,18 @@ +# `20.4` `Map` y tipos de datos + Algunas veces los arreglos vienen con valores mixtos y debes unificarlos en un solo tipo de datos. -Instrucciones -Actualiza la función map para que cree un nuevo arreglo que contenga los tipos de datos de cada elemento correspondiente al arreglo original. +## 📝 Instrucciones: + +1. Actualiza la función `map` para que cree un nuevo arreglo que contenga los tipos de datos de cada elemento correspondiente al arreglo original. + +### Resultado esperado: -El resultado en la consola debería ser algo como: ```md [string,string,... ,number,string,...] ``` -Pista: -Use la función typeof para obtener el tipo de datos -Más sobre el tipo de función \ No newline at end of file +### 💡 Pista: + +Usa la función `typeof` para obtener el tipo de datos +Más sobre el tipo de función. \ No newline at end of file diff --git a/exercises/20.4-Map-data-types/README.md b/exercises/20.4-Map-data-types/README.md index 672356ef..a30bc3cf 100644 --- a/exercises/20.4-Map-data-types/README.md +++ b/exercises/20.4-Map-data-types/README.md @@ -2,15 +2,17 @@ Some times arrays come with mixed values and you need to unify them into only one data type. -# 📝Instructions -- Update the map function to make it create a new array that contains the data types of - each corresponding item from the original array. +## 📝 Instructions: + +1. Update the `map` function to make it create a new array that contains the data types of each corresponding item from the original array. + +### Expected result: -The result in the console should be something like: ```md [string,string,... ,number,string,...] ``` -💡Hint: +### 💡 Hint: + Use the `typeof` function to get the data type -More about the typeof function \ No newline at end of file +More about the typeof function. \ No newline at end of file diff --git a/exercises/20.5-Map-arrays-of-objects/README.es.md b/exercises/20.5-Map-arrays-of-objects/README.es.md index 631f23e1..416e692a 100644 --- a/exercises/20.5-Map-arrays-of-objects/README.es.md +++ b/exercises/20.5-Map-arrays-of-objects/README.es.md @@ -1,20 +1,28 @@ +# `20.5` "Mapeando" un arreglo de objetos + El escenario más común para la función de mapeo es para simplificar los arreglos dados, por ejemplo: -El algoritmo actual crea un arreglo con solo los nombres de las personas y la imprime en la consola. +El algoritmo actual crea un arreglo con solo los nombres de las personas y los imprime en la consola. -Instrucciones +## 📝 Instrucciones: -Actualiza la función map para que cree un arreglo donde cada elemento contenga lo siguiente: +1. Actualiza la función `map` para que cree un arreglo donde cada elemento contenga lo siguiente: ```md Hello my name is Joe and I am 13 years old. ``` -Pista -Debes determinar la edad de cada persona según su fecha de nacimiento. Busca en Google "Cómo obtener la edad de la fecha de nacimiento dada en JavaScript" -Dentro de tu función simplifier, debe devolver una concatenación. +## 💡 Pista: + ++ Debes determinar la edad de cada persona según su fecha de nacimiento (birthDate).++ + ++ Busca en Google "Cómo obtener la edad de la fecha de nacimiento dada en JavaScript". + ++ Dentro de tu función simplifier, debe devolver una concatenación. + + +### Resultado esperado: -El resultado esperado debería ser similar pero no exactamente a esto: ```md [ 'Hello, my name is Joe and I am 32 years old', 'Hello, my name is Bob and I am 42 years old', diff --git a/exercises/20.5-Map-arrays-of-objects/README.md b/exercises/20.5-Map-arrays-of-objects/README.md index 5c198a95..26e88ec7 100644 --- a/exercises/20.5-Map-arrays-of-objects/README.md +++ b/exercises/20.5-Map-arrays-of-objects/README.md @@ -4,20 +4,24 @@ The most common scenario for the mapping function is for simplifying given array The current algorithm creates an array with only the names of the people and prints it on the console. -# 📝Instructions +## 📝 Instructions: -- Please update the mapping function so it creates an array where each item contains the following: +1. Please update the mapping function so it creates an array where each item contains the following: ```md Hello my name is Joe and I am 13 years old. ``` -## 💡Hint -You have to get the age of each people based on their birthDate. -Search in Google "How to get the age of given birth date in javascript" -Inside your simplifier function you have to return a concatenation. +## 💡 Hint: + ++ You have to get the age of each people based on their birthDate. + ++ Search in Google "How to get the age of given birth date in javascript". + ++ Inside your simplifier function you have to return a concatenation. + +### Expected result: -The expected output should look similar but not exactly to this: ```md [ 'Hello, my name is Joe and I am 32 years old', 'Hello, my name is Bob and I am 42 years old', @@ -26,4 +30,3 @@ The expected output should look similar but not exactly to this: 'Hello, my name is Steve and I am 14 years old' ] ``` - diff --git a/exercises/20.6-Yes-and-no/README.es.md b/exercises/20.6-Yes-and-no/README.es.md index 84e1d399..3fc06e8c 100644 --- a/exercises/20.6-Yes-and-no/README.es.md +++ b/exercises/20.6-Yes-and-no/README.es.md @@ -1,14 +1,23 @@ -Instrucciones -Por favor utiliza la funcionalidad del map para recorrer el arreglo de booleanos y cree un nuevo arreglo que contenga el string 'wiki' por cada 1 y 'woko' por cada 0 que tiene el arreglo original. -Imprime esa matriz en la consola. +# `20.6` Sí y no + +## 📝 Instrucciones: + +1. Por favor utiliza la funcionalidad del map para recorrer el arreglo de booleanos y crea un nuevo arreglo que contenga el string `wiki` por cada 1 y `woko` por cada 0 que tiene el arreglo original. + +2. Imprime ese arreglo en la consola. + +### Resultado esperado: -Ejemplo del output (salida): ```md [ 'woko', 'wiki', 'woko', 'woko', 'wiki', 'wiki', 'wiki', 'woko', 'woko', 'wiki', 'woko', 'wiki', 'wiki', 'woko', 'woko', 'woko', 'woko', 'woko', 'woko', 'woko', 'woko', 'wiki', 'woko', 'woko', 'woko', 'woko', 'wiki' ] ``` -Pista: -Necesitas mapear todo el arreglo -Dentro de tu función de mapeo, necesitas usar un condicional para verificar si el valor actual es 0 o 1. -Si el valor actual es 1, imprime el string 'wiki' -Si el valor actual es 0, imprime el string 'woko' +## 💡 Pista: + ++ Necesitas mapear todo el arreglo + ++ Dentro de tu función de mapeo, necesitas usar un condicional para verificar si el valor actual es 0 o 1. + ++ Si el valor actual es 1, imprime el string `wiki`. + ++ Si el valor actual es 0, imprime el string `woko` \ No newline at end of file diff --git a/exercises/20.6-Yes-and-no/README.md b/exercises/20.6-Yes-and-no/README.md index 297e6343..25c81bac 100644 --- a/exercises/20.6-Yes-and-no/README.md +++ b/exercises/20.6-Yes-and-no/README.md @@ -1,16 +1,23 @@ # `20.6` Yes and No -# 📝Instructions -- Please use the Array map functionality to loop the array of booleans and create a new array that contains the string 'wiki' for every 1 and 'woko' for every 0 that the original array had. -- Print that array on the console. +## 📝 Instructions: + +1. Please use the Array map functionality to loop the array of booleans and create a new array that contains the string `wiki` for every 1 and `woko` for every 0 that the original array had. + +2. Print that array on the console. + +### Expected result: -Example output: ```md [ 'woko', 'wiki', 'woko', 'woko', 'wiki', 'wiki', 'wiki', 'woko', 'woko', 'wiki', 'woko', 'wiki', 'wiki', 'woko', 'woko', 'woko', 'woko', 'woko', 'woko', 'woko', 'woko', 'wiki', 'woko', 'woko', 'woko', 'woko', 'wiki' ] ``` -## 💡Hint -You need to map the entire array -Inside your mapping function you need to use a conditional to verify if the current value is 0 or 1. -If the current value is 1 you print the string 'wiki' -If the current value is 0 you print the string 'woko' +## 💡 Hint: + ++ You need to map the entire array + ++ Inside your mapping function you need to use a conditional to verify if the current value is 0 or 1. + ++ If the current value is 1 you print the string `wiki`. + ++ If the current value is 0 you print the string `woko`. diff --git a/exercises/21-Filter-an-array/README.es.md b/exercises/21-Filter-an-array/README.es.md index 39a31168..2f915648 100644 --- a/exercises/21-Filter-an-array/README.es.md +++ b/exercises/21-Filter-an-array/README.es.md @@ -1,3 +1,4 @@ + Otra función sorprendente para los arreglos es el filtro. Repite toda el arreglo original y solo devuelve los valores que coinciden con una condición particular. [Aquí está la documentación de la función de filtro en w3school](https://www.w3schools.com/jsref/jsref_filter.asp) diff --git a/exercises/21.3-Filter-list/test.js b/exercises/21.3-Filter-list/test.js index 64610446..76ee64d4 100644 --- a/exercises/21.3-Filter-list/test.js +++ b/exercises/21.3-Filter-list/test.js @@ -26,7 +26,7 @@ test('The output in the console should match the one in the instructions!', func //declare your function here function _filterByName(theArray, theString){ - let filteredArray = theArray.filter(item => item.includes(theString)) + let filteredArray = theArray.filter(item => item.toLowerCase().includes(theString.toLowerCase())) return filteredArray } diff --git a/exercises/22-Matrix-Builder/README.md b/exercises/22-Matrix-Builder/README.md index 09dca3c2..195440a4 100644 --- a/exercises/22-Matrix-Builder/README.md +++ b/exercises/22-Matrix-Builder/README.md @@ -11,9 +11,9 @@ This number represents the amount of rows and columns for the matrix. Example: This function should return an array of arrays that represents the matrix. Example: 3 should return: ```md [ - [1, 1, 1], - [1, 1, 1], - [1, 1, 1] + [0, 1, 1], + [1, 0, 1], + [0, 0, 0] ] ``` diff --git a/exercises/22-Matrix-Builder/test.js b/exercises/22-Matrix-Builder/test.js index f2587bd1..253193a6 100644 --- a/exercises/22-Matrix-Builder/test.js +++ b/exercises/22-Matrix-Builder/test.js @@ -8,7 +8,7 @@ global.console.log = console.log = jest.fn((text) => _buffer += text + "\n"); const app_content = fs.readFileSync(path.resolve(__dirname, './app.js'), 'utf8'); -test("You should create a function named matrixBuilder", function(){ +test("You should create a function named matrixBuilder.", function(){ const file = rewire("./app.js"); const myFunc = file.__get__('matrixBuilder'); expect(myFunc).toBeTruthy(); @@ -19,25 +19,28 @@ test('You have to use the console.log function to print the correct output.', fu expect(console.log.mock.calls.length > 0).toBe(true); }); -test('The output in the console should match the one in the instructions!', function () { - const _app = rewire('./app.js'); - - function matrixBuilder(matrix){ - let newMatrix = []; - let newArray = []; - for (let x =0; x < matrix; x++){ - newMatrix.push(newArray) - } - for (let i =0; i < matrix; i++){ - newArray.push(1) - } - return newMatrix - } - - let _test = matrixBuilder(5) - expect(_buffer).toMatch(_test.map(n => n).join(",")); - }); - - +test('The matrix should have the ammount of rows and columns required as parameter.', function () { + const file = rewire("./app.js"); + const myFunc = file.__get__('matrixBuilder'); + let _test = myFunc(5); + expect(_test.length.toString()).toMatch("5"); + expect(_test[0].length.toString()).toMatch("5"); +}); +test('The matrix should only have 0 or 1 as values.', function(){ + const file = rewire("./app.js"); + const myFunc = file.__get__('matrixBuilder'); + let _test = myFunc(5); + let findCero = false; + let findOne = false; + _test.forEach(row => { + row.forEach(item => { + if(item == 0) findCero = true; + else if(item == 1) findOne = true; + else throw new Exception("The matrix contains other items rather than 0 and 1") + }) + }) + expect(findCero).toBe(true); + expect(findOne).toBe(true); +}); diff --git a/exercises/25-Techno-beat/test.js b/exercises/25-Techno-beat/test.js index f71d9cc5..7e91aa80 100644 --- a/exercises/25-Techno-beat/test.js +++ b/exercises/25-Techno-beat/test.js @@ -36,7 +36,7 @@ test('The output in the console should match the one in the instructions!', func } } } - return string + return string.trim() } @@ -45,11 +45,11 @@ test('The output in the console should match the one in the instructions!', func let _test3 = _lyricsGenerator([0,0,0]) let _test4 = _lyricsGenerator([1,0,1]) let _test5 = _lyricsGenerator([1,1,1]) - expect(console.log).toHaveBeenCalledWith(_test1); - expect(console.log).toHaveBeenCalledWith(_test2); - expect(console.log).toHaveBeenCalledWith(_test3); - expect(console.log).toHaveBeenCalledWith(_test4); - expect(console.log).toHaveBeenCalledWith(_test5); + expect(console.log.trim()).toHaveBeenCalledWith(_test1); + expect(console.log.trim()).toHaveBeenCalledWith(_test2); + expect(console.log.trim()).toHaveBeenCalledWith(_test3); + expect(console.log.trim()).toHaveBeenCalledWith(_test4); + expect(console.log.trim()).toHaveBeenCalledWith(_test5); });