From 89e0ea63f833c86526919c48df2d124ced013d4b Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 09:08:17 -0500
Subject: [PATCH 01/28] Create task-57
---
es/task-57 | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
create mode 100644 es/task-57
diff --git a/es/task-57 b/es/task-57
new file mode 100644
index 0000000..d232707
--- /dev/null
+++ b/es/task-57
@@ -0,0 +1,36 @@
+
+

+
+
+El pequeño Merlin quiere ser meteorologo. El mide la temperatura del aire cada hora así que despues de
+varios dias el tiene una larga secuencia de valores.
+
+Sin embargo, sus instrumentos no son ideales por lo que las mediciones no son exactas--ellos aleatoreamente
+saltan hacia arriba y hacia abajo algunos grados del valor real.
+
+observando esto, Merlin decide hacer los datos más suaves. Para lograrlo, el solo necesita que cada valor
+sea substituido por el promedio de sus dos vecinos. Por ejemplo, si el tiene una secuencia de cinco valores como esta:
+
+ 3 5 6 4 5
+
+Entonces el segundo (i.e. `5`) debe ser sustituido por `(3 + 5 + 6) / 3 = 4.66666666667`,
+el tercero (i.e. `6`) debe ser sustituido por `(5 + 6 + 4) / 3 = 5`,
+el cuarto (i.e. `4`) debe ser sustituido por `(6 + 4 + 5) / 3 = 5`.
+Por convencion, los valores primero y ultimo permanecerán iguales.
+
+En la imagen de arriba la linea azul muestra los datos sin procesar, mientras que la roja los muestras suavizados.
+
+Tienes que escribir un programa que le ayude al pequeño Merlin con este algoritmo de procesamiento digital de señales.
+
+**Datos de entrada** En esta primera linea, se dará la longitud de la secuencia de datos de la segunda linea.
+La segunda linea contendra las mediciones.
+**Respuesta** debe contener la secuencia procesada. Todos los valores deben ser calculados con una precision minima de `1e-7`.
+
+Ejemplo:
+
+ datos de entrada:
+ 7
+ 32.6 31.2 35.2 37.4 44.9 42.1 44.1
+
+ respuesta:
+ 32.6 33 34.6 39.1666666667 41.4666666667 43.7 44.1
From 25f61fcffb733fa5ec79de114ee5190088f436d3 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 09:09:05 -0500
Subject: [PATCH 02/28] Create task-68
---
es/task-68 | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
create mode 100644 es/task-68
diff --git a/es/task-68 b/es/task-68
new file mode 100644
index 0000000..49842a6
--- /dev/null
+++ b/es/task-68
@@ -0,0 +1,29 @@
+
+

+
+
+Dos ciclistas empiezan a moverse desde ciudades diferentes para encontrarse en algun lugar en el medio (no exactamente
+dado que ellos viajan a diferentes velocidades)
+
+La carretera está trazada en linea recta entre las dos ciudades.
+
+
+Te serán dadas las distancia entre las ciudades `S` (en kilometros) y la rapides para los dos ciclistas (`A` y `B` en
+kilometros por hora). Tú tarea es encontrar el punto de encuentro (la distancia medida desde la primera ciudad)
+
+**Datos de entrada** tendrá el numero de casos de prueba en la primera linea.
+Las siguientes lineas tendrán tres valores cada una `S A B`.
+**Respuesta** debe contener las distancias entre la primera ciudad y el punto de encuentro (es decir, la distancia recorrida por el primer cilista
+antes del cruce entre ellos), separado con espacios.
+
+Ejemplo:
+
+ datos de entrada:
+ 2
+ 10 1 1
+ 20 1 2
+
+ respuesta:
+ 5 6.66666667
+
+*Nota: los valores (punto flotante) deben tener una precision minima de `10e-7`*
From 0a397d0271f2ce0c35d2283cd0cd03732825e33a Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 09:26:56 -0500
Subject: [PATCH 03/28] Create task-50
---
es/task-50 | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 es/task-50
diff --git a/es/task-50 b/es/task-50
new file mode 100644
index 0000000..d2b2a91
--- /dev/null
+++ b/es/task-50
@@ -0,0 +1,27 @@
+
+La palabra o frase completa la cual tiene la misma secuencia de letras en ambas direcciones es llamada **palindrome**. Aqui hay
+unos ejemplos:
+
+ Stats
+ Amore, Roma
+ No 'x' in Nixon
+ Was it a cat I saw?
+
+Como puedes ver, las mayusculas son tomadas como minusculas. Espacios y puntuacion son ignorados.
+
+Tu meta en este ejercicio de programacion es determinar, si la frase representa un palindrome o no.
+
+**Datos de Entrada** contiene el numero de frases en la primera linea.
+Las siguientes lineas contienen una frase cada una.
+**Respuesta** debe tener una sola letra (separada por espacio) para cada frase: `Y` si es un palindrome y `N` si no.
+
+Ejemplo:
+
+ datos de entrada:
+ 3
+ Stars
+ O, a kak Uwakov lil vo kawu kakao!
+ Some men interpret nine memos
+
+ respuesta:
+ N Y Y
From f656ad472ade7530bd877e8fb36e282ecbd4456f Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 09:27:46 -0500
Subject: [PATCH 04/28] Update task-68
---
es/task-68 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/task-68 b/es/task-68
index 49842a6..179df64 100644
--- a/es/task-68
+++ b/es/task-68
@@ -1,5 +1,5 @@
-

+
Dos ciclistas empiezan a moverse desde ciudades diferentes para encontrarse en algun lugar en el medio (no exactamente
From 8c3054522d0c64b82e1866ef7d4722ab98e110d2 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 09:28:55 -0500
Subject: [PATCH 05/28] Update task-57
---
es/task-57 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/task-57 b/es/task-57
index d232707..be1b87a 100644
--- a/es/task-57
+++ b/es/task-57
@@ -1,5 +1,5 @@
-

+
El pequeño Merlin quiere ser meteorologo. El mide la temperatura del aire cada hora así que despues de
From 3dcb6c5269f34f9456ea978d02ef88b8219aed12 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 10:07:06 -0500
Subject: [PATCH 06/28] Create task-43.md
---
es/task-43.md | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
create mode 100644 es/task-43.md
diff --git a/es/task-43.md b/es/task-43.md
new file mode 100644
index 0000000..da7c837
--- /dev/null
+++ b/es/task-43.md
@@ -0,0 +1,36 @@
+
+Cuando se programa un juego de tablero con dados, muchos programadores novatos experimentan problemas en la conversión de valores aleatoreos
+a los valores especificos de los puntos en los dados. La meta de esta tarea es dar una practica en simulacion en rodar dados dados recibiendo valores
+de un generador de numeros aleatoreos.
+
+Supon, que tenemos un generador que nos da valores aleatoreos en un rango entre '0' (incluyendolo) y '1' (sin incluirlo)
+esto podria ser encontrado en lenguajes como **Basic**, **Java**, **Matlab** etc.
+
+Queremos convertir esos valores con punto flotante a uno de los seis numeros **enteros**: entre '1' y'6'. Esto podria ser
+logrado realizando los siguientes pasos:
+
+1. Multiplica el valor aleatoreo por N el cual es el numero de valores que queremos obtener - en nuestro caso multiplicaremos por '6' y
+ el resultado será un valor punto flotante en el rango entre '0' (incluido) y '6' ( no incluido)
+2. Ahora tomamos la parte entera del resultado (funcion llamada 'floor' -piso- o convertir a 'int' -entero-)
+ se convertira en uno de los siguientes: `0`, `1`, `2`, `3`, `4`, `5 con la misma probabilidad para cada uno.
+3. Dado que necesitamos valores entre '1' y '6' nosotros simplemente añadimos '1' al resultado.
+
+Ahora te serán dados varios numeros en el rango `[0 .. 1)` (puedes estar seguro, ellos son provistos por un generador de numeros aleatoreos) -
+y tú tienes que convertirlos a valores de dados utilizando el algoritmo de arriba.
+
+**Datos de entrada** En la primera linea contendran el numero total de valores a convertir.
+Las siguientes lineas contendran un valor cada una, en forma como `0.142857`.
+**Respuesta** deberá contener numeros entre '1' y '6' para cada valor de entrada, producido por el algoritmo mostrado.
+
+Ejemplo:
+
+ 6
+ 0.59558786964
+ 0.861037873663
+ 0.385597702116
+ 0.246237673331
+ 0.808033385314
+ 0.0544673665427
+
+ respuesta:
+ 4 6 3 2 5 1
From 9d4399551fd72d5fd04e69205e885a00acb747cf Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 10:14:49 -0500
Subject: [PATCH 07/28] Rename task-50 to task-50.md
---
es/{task-50 => task-50.md} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename es/{task-50 => task-50.md} (100%)
diff --git a/es/task-50 b/es/task-50.md
similarity index 100%
rename from es/task-50
rename to es/task-50.md
From a3c79aa63bb384791f6ad3ccb40789cc5940090c Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 10:15:26 -0500
Subject: [PATCH 08/28] Rename task-57 to task-57.md
---
es/{task-57 => task-57.md} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename es/{task-57 => task-57.md} (100%)
diff --git a/es/task-57 b/es/task-57.md
similarity index 100%
rename from es/task-57
rename to es/task-57.md
From 946db84d07884822a498d2459b23d13ab9319d34 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 10:15:57 -0500
Subject: [PATCH 09/28] Rename task-68 to task-68.md
---
es/{task-68 => task-68.md} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename es/{task-68 => task-68.md} (100%)
diff --git a/es/task-68 b/es/task-68.md
similarity index 100%
rename from es/task-68
rename to es/task-68.md
From 93238f2c5781d7a3b6bb150ed2e5930f348e5fd2 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 10:39:29 -0500
Subject: [PATCH 10/28] Create task-48.md
---
es/task-48.md | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
create mode 100644 es/task-48.md
diff --git a/es/task-48.md b/es/task-48.md
new file mode 100644
index 0000000..972ab5a
--- /dev/null
+++ b/es/task-48.md
@@ -0,0 +1,37 @@
+
+Este es uno de los problemas matematicos más misteriosos del siglo pasado -- porque su planteamiento es extremadamente simple-
+y porque la prueba es a+un desconocida. Sin embargo, ofrece un buen ejercicio de programación para novatos.
+
+**Suponga** que selecionamos un valor inicial 'X' y luego construimos una secuencia de valores siguiendo las reglas a continuación:
+
+ si X es par (i.e. X modulo 2 = 0) entonces
+ Xsiguiente = X / 2
+ sino
+ Xnext = 3 * X + 1
+
+Es decir, si `X` es impar, la secuencia crecerá -- y si es par, la sefcuencia decrece. Por ejemplo, con `X = 15` tenemos la secuencia:
+
+ 15 46 23 70 35 106 53 160 80 40 20 10 5 16 8 4 2 1
+
+Después de que la secuencia alcanza '1' entra en el loop `1 4 2 1 4 2 1...`.
+
+La intriga está en el hecho de que dado cualquier numero inicial 'X' la secuencia tarde o temprano alcanza '1' - sinembargo
+imaginate que esta `conjetura de Collatz ` fue expresada en '1937' hasta el momento nadie ha logrado probar o encontrar un contraejemplo
+(Es decir, un numero para el cual la secuencia no termina en '1' --ya sea un entero para el cual el loop es más grande que un loop creciendo hasta infinitamente)
+de que la conjetura es para cualquier 'X'.
+
+**Tu tarea** es que para los numeros dados calcules cuantos pasos son necesarios para llegar a '1'
+
+**Datos de entrada** en la primera linea contiene el numero de casos a calcular.
+La segunda linea contiene los casos de prueba- Es decir, los valores para los cuales el calculo debe ser hecho.
+**Respuesta** debe contener la misma cantidad de resultados, cada una de ellas dando la cuenta de el numero de pasos en la secuencia de Collatz
+para llegar a ´1´.
+
+Por ejemplo:
+
+ datos de entrada:
+ 3
+ 2 15 97
+
+ respuesta:
+ 1 17 118
From 7b5f18de5a4037fb502d5a698fe7fd54a06fbb0c Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 11:31:47 -0500
Subject: [PATCH 11/28] Create task-27.md
---
es/task-27.md | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
create mode 100644 es/task-27.md
diff --git a/es/task-27.md b/es/task-27.md
new file mode 100644
index 0000000..dd1e3d8
--- /dev/null
+++ b/es/task-27.md
@@ -0,0 +1,52 @@
+_ podria ser util resolver [Bubble in Array](./bubble-in-array) antes de este problema._
+
+El ordenamiento de arreglos es un problema popular para los recien llegados -- y extremadamente importante en programación profesional
+(bases de datos, bibliotecas etc).
+
+**Ordenamiento** es reorganizar acorde a alguna regla simple basada en la comparación. Suponte que tenemos el siguiente arreglo:
+
+ a = [3, 1, 4, 1, 5, 9, 2, 6]
+
+y queremos que sus elementos sean reordenados en un orden no decreciente -Es decir, si un elemento es puesto primero (a la
+izquierda) de otro elemento - podemos estar seguros que el primer elemento es menor o igual al segundo.
+
+Hablando matematicamente, para algunos indices 'i' y 'j' si 'i
Date: Sun, 16 Aug 2020 11:43:24 -0500
Subject: [PATCH 12/28] Create task-31.md
---
es/task-31.md | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
create mode 100644 es/task-31.md
diff --git a/es/task-31.md b/es/task-31.md
new file mode 100644
index 0000000..89cd3d0
--- /dev/null
+++ b/es/task-31.md
@@ -0,0 +1,20 @@
+Rotar la cadena de caracteres en ´K' significa cortar esos caracteres desde el inicio y transferirlos al final de la cadena.
+Si 'K' es negativo, los caracteres al contrario deben ser transferidos desde el final hasta el inicio.
+
+**Datos de entrada** contendran el numero te casos de prueba en la primera linea.
+Las siguientes lineas contendran el numero 'K' y alguna cadena 'S' separada por espacio- un par en cada linea.
+La cadena 'S' contendra unicamente letras en minusculas. 'K' no excederá la mitad de la longitud de 'S' en valor absoluto.
+**Respuesta** debe contener cadenas rotadas de acuerdo con la regla anteriormente dada, separadas por espacios. Por ejemplo:
+
+ datos de entrada:
+ 2
+ 3 forwhomthebelltolls
+ -6 verycomplexnumber
+
+ respuesta:
+ whomthebelltollsfor numberverycomplex
+
+La tarea podria ser facilmente resuelta creando una nueva clase de cadena concatenando las dos subcadenas.
+Sin embargo, si quieres un desafio más serio, te puedes animar a desarrollar la rotación "en campo", moviendo los bytes de
+la cadena original (Es decir, sin pedir memoria para nuevos datos). Esto podria ser hecho con la ayuda de un loop y solo con
+una variable temporal.
From ecea330d9f13791379c68decf888bad660510ebd Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 11:51:28 -0500
Subject: [PATCH 13/28] Update task-27.md
---
es/task-27.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/es/task-27.md b/es/task-27.md
index dd1e3d8..c2cbb11 100644
--- a/es/task-27.md
+++ b/es/task-27.md
@@ -8,7 +8,7 @@ El ordenamiento de arreglos es un problema popular para los recien llegados -- y
a = [3, 1, 4, 1, 5, 9, 2, 6]
y queremos que sus elementos sean reordenados en un orden no decreciente -Es decir, si un elemento es puesto primero (a la
-izquierda) de otro elemento - podemos estar seguros que el primer elemento es menor o igual al segundo.
+izquierda) de otro elemento - podemos estar seguros que el primer elemento es menor o igual que el segundo.
Hablando matematicamente, para algunos indices 'i' y 'j' si 'i
Date: Sun, 16 Aug 2020 11:54:38 -0500
Subject: [PATCH 14/28] Update task-31.md
---
es/task-31.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/es/task-31.md b/es/task-31.md
index 89cd3d0..c81beaa 100644
--- a/es/task-31.md
+++ b/es/task-31.md
@@ -1,7 +1,7 @@
Rotar la cadena de caracteres en ´K' significa cortar esos caracteres desde el inicio y transferirlos al final de la cadena.
Si 'K' es negativo, los caracteres al contrario deben ser transferidos desde el final hasta el inicio.
-**Datos de entrada** contendran el numero te casos de prueba en la primera linea.
+**Datos de entrada** contendrán el numero de casos de prueba en la primera linea.
Las siguientes lineas contendran el numero 'K' y alguna cadena 'S' separada por espacio- un par en cada linea.
La cadena 'S' contendra unicamente letras en minusculas. 'K' no excederá la mitad de la longitud de 'S' en valor absoluto.
**Respuesta** debe contener cadenas rotadas de acuerdo con la regla anteriormente dada, separadas por espacios. Por ejemplo:
@@ -14,7 +14,7 @@ La cadena 'S' contendra unicamente letras en minusculas. 'K' no excederá la mit
respuesta:
whomthebelltollsfor numberverycomplex
-La tarea podria ser facilmente resuelta creando una nueva clase de cadena concatenando las dos subcadenas.
+La tarea podria ser facilmente resuelta creando una nueva clase de cadena y concatenando las dos subcadenas.
Sin embargo, si quieres un desafio más serio, te puedes animar a desarrollar la rotación "en campo", moviendo los bytes de
la cadena original (Es decir, sin pedir memoria para nuevos datos). Esto podria ser hecho con la ayuda de un loop y solo con
una variable temporal.
From ffa545aff054d491aff5ef3a0227ee2979c3e6eb Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 12:06:27 -0500
Subject: [PATCH 15/28] Update task-48.md
---
es/task-48.md | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/es/task-48.md b/es/task-48.md
index 972ab5a..e5b63a4 100644
--- a/es/task-48.md
+++ b/es/task-48.md
@@ -1,22 +1,22 @@
Este es uno de los problemas matematicos más misteriosos del siglo pasado -- porque su planteamiento es extremadamente simple-
-y porque la prueba es a+un desconocida. Sin embargo, ofrece un buen ejercicio de programación para novatos.
+y porque la prueba es aún desconocida. Sin embargo, ofrece un buen ejercicio de programación para novatos.
**Suponga** que selecionamos un valor inicial 'X' y luego construimos una secuencia de valores siguiendo las reglas a continuación:
- si X es par (i.e. X modulo 2 = 0) entonces
+ si X es par (es decir, X modulo 2 = 0) entonces
Xsiguiente = X / 2
sino
Xnext = 3 * X + 1
-Es decir, si `X` es impar, la secuencia crecerá -- y si es par, la sefcuencia decrece. Por ejemplo, con `X = 15` tenemos la secuencia:
+Es decir, si `X` es impar, la secuencia crecerá -- y si es par, la secuencia decrecerá. Por ejemplo, con `X = 15` tenemos la secuencia:
15 46 23 70 35 106 53 160 80 40 20 10 5 16 8 4 2 1
Después de que la secuencia alcanza '1' entra en el loop `1 4 2 1 4 2 1...`.
-La intriga está en el hecho de que dado cualquier numero inicial 'X' la secuencia tarde o temprano alcanza '1' - sinembargo
-imaginate que esta `conjetura de Collatz ` fue expresada en '1937' hasta el momento nadie ha logrado probar o encontrar un contraejemplo
+La intriga está en el hecho de que dado cualquier numero inicial 'X' la secuencia tarde o temprano alcanza '1' - sin embargo
+imaginate que esta `conjetura de Collatz ` fue expresada en '1937' y hasta el momento nadie ha logrado probar o encontrar un contraejemplo
(Es decir, un numero para el cual la secuencia no termina en '1' --ya sea un entero para el cual el loop es más grande que un loop creciendo hasta infinitamente)
de que la conjetura es para cualquier 'X'.
@@ -24,7 +24,7 @@ de que la conjetura es para cualquier 'X'.
**Datos de entrada** en la primera linea contiene el numero de casos a calcular.
La segunda linea contiene los casos de prueba- Es decir, los valores para los cuales el calculo debe ser hecho.
-**Respuesta** debe contener la misma cantidad de resultados, cada una de ellas dando la cuenta de el numero de pasos en la secuencia de Collatz
+**Respuesta** debe contener la misma cantidad de resultados, cada una de ellas dando la cuenta del numero de pasos en la secuencia de Collatz
para llegar a ´1´.
Por ejemplo:
From 45a19d21ff1dca1d77aa27dad6b1935317b6059e Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 12:09:55 -0500
Subject: [PATCH 16/28] Update task-50.md
---
es/task-50.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/task-50.md b/es/task-50.md
index d2b2a91..ba3e4e6 100644
--- a/es/task-50.md
+++ b/es/task-50.md
@@ -11,7 +11,7 @@ Como puedes ver, las mayusculas son tomadas como minusculas. Espacios y puntuaci
Tu meta en este ejercicio de programacion es determinar, si la frase representa un palindrome o no.
-**Datos de Entrada** contiene el numero de frases en la primera linea.
+**Datos de Entrada** En la primera linea, contiene el numero de frases.
Las siguientes lineas contienen una frase cada una.
**Respuesta** debe tener una sola letra (separada por espacio) para cada frase: `Y` si es un palindrome y `N` si no.
From a2166dcf96716bf26325e3e0dbbf34d97a291dd7 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 12:11:20 -0500
Subject: [PATCH 17/28] Update task-57.md
---
es/task-57.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/task-57.md b/es/task-57.md
index be1b87a..b8de1f2 100644
--- a/es/task-57.md
+++ b/es/task-57.md
@@ -5,7 +5,7 @@
El pequeño Merlin quiere ser meteorologo. El mide la temperatura del aire cada hora así que despues de
varios dias el tiene una larga secuencia de valores.
-Sin embargo, sus instrumentos no son ideales por lo que las mediciones no son exactas--ellos aleatoreamente
+Sin embargo, sus instrumentos no son ideales por lo que las mediciones no son exactas--pues aleatoreamente
saltan hacia arriba y hacia abajo algunos grados del valor real.
observando esto, Merlin decide hacer los datos más suaves. Para lograrlo, el solo necesita que cada valor
From 63193e8fc7466a114b45ca0213921d71118683e7 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 12:13:35 -0500
Subject: [PATCH 18/28] Update task-68.md
---
es/task-68.md | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/es/task-68.md b/es/task-68.md
index 179df64..04cdd88 100644
--- a/es/task-68.md
+++ b/es/task-68.md
@@ -2,14 +2,13 @@
-Dos ciclistas empiezan a moverse desde ciudades diferentes para encontrarse en algun lugar en el medio (no exactamente
-dado que ellos viajan a diferentes velocidades)
+Dos ciclistas empiezan simultaneamente a moverse desde ciudades diferentes para encontrarse en algún lugar en el medio (no exactamente
+en el punto medio, dado que ellos viajan a diferentes velocidades)
La carretera está trazada en linea recta entre las dos ciudades.
-
-Te serán dadas las distancia entre las ciudades `S` (en kilometros) y la rapides para los dos ciclistas (`A` y `B` en
-kilometros por hora). Tú tarea es encontrar el punto de encuentro (la distancia medida desde la primera ciudad)
+Te serán dadas las distancia entre las ciudades `S` (en kilometros) y la rapidez para los dos ciclistas (`A` y `B` en
+kilometros por hora). Tu tarea es encontrar el punto de encuentro (la distancia medida desde la primera ciudad)
**Datos de entrada** tendrá el numero de casos de prueba en la primera linea.
Las siguientes lineas tendrán tres valores cada una `S A B`.
From 426db1a5447a243a2d43c7ebca2955c3c50b148d Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 21:27:33 -0500
Subject: [PATCH 19/28] Create task-24.md
---
es/task-24.md | 44 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
create mode 100644 es/task-24.md
diff --git a/es/task-24.md b/es/task-24.md
new file mode 100644
index 0000000..6109aef
--- /dev/null
+++ b/es/task-24.md
@@ -0,0 +1,44 @@
+Numeros aleatoreos son a menudo en programacion de juegos e investigaciones cientificas, pero tambien ellos pueden ser utiles incluso
+en aplicaciones de negocios (para generar claves unicas, passwords etc.). Nosotros vamos a aprender como son
+generadas y tendremos una practica con algunos metodos simples.
+
+Aqui está uno de los primeros metodos para producir una secuencia de semilla independiente (Es decir numeros seudoaleatores) de numeros:
+
+1. Elige un valor inicial de 4 digitos (Es decir en el rango '0000...9999').
+2. multiplicalo por si mismo (Es decir, elevalo a la segunda potencia) para obtener un valor de 8 digitos (añade los ceros - al inicio- faltantes si es necesario).
+3. Truncar los dos primeros y dos ultimos digitos en la representación decimal de este resultado.
+4. El nuevo valor debe contener 4 digitos y será el siguiente valor de la secuencia.
+
+Ejemplo:
+
+ 5761 - Tomemos este como el primer numero
+ 5761 * 5761 = 33189121 - elevemoslo al cuadrado
+ 33(1891)21 => 1891 - truncamos para obtener el medio
+
+ 1891 - este es el segundo numero de la potencia
+ 1891 * 1891 = 3575881 - elevado al cuadrado (y llenando con ceros al inicio para obtener 8 digitos)
+ 03(5758)81 => 5758 - truncamos para obtener el medio
+
+ 5758 - Este es el tercer numero en la secuencia(y así sucesivamente)
+
+Resulta obvio que tarde o temprano cada secuencia llegará a una especie de bucle, por ejemplo:
+
+ 0001 -> 0000 -> 0000 - llega a un bucle despues de dos iteraciones
+ 4100 -> 8100 -> 6100 -> 2100 -> 4100 - llega a un bucle despues de 4 iteraciones
+
+Te seran dados valores iniciales para varias secuencias. Por cada una de ellas, reporta el numero de iteraciones necesarias
+para llegar a la repeticion.
+
+**Datos de entrada** en la primera linea, contendran la cantidad de valores iniciales. En la segunda linea contendran los valores iniciales
+separados por espacios.
+**Respuesta** debe contener el numero de iteraciones para las secuencias con las cuales dado el valor inicial se convierte en bucle.
+
+Ejemplo:
+
+ datos de entrada:
+ 3
+ 0001 4100 5761
+
+ respuesta
+ 2 4 88
+* Sugerencia: para truncar el valor de 8 dígitos, divídalo por `100` y luego tome el resto de la división por` 10000`. *
From a41b34f8dfb7c907b818ecf0e1b1a5890d75f942 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 16 Aug 2020 21:31:33 -0500
Subject: [PATCH 20/28] Update task-24.md
---
es/task-24.md | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/es/task-24.md b/es/task-24.md
index 6109aef..e867b96 100644
--- a/es/task-24.md
+++ b/es/task-24.md
@@ -1,8 +1,8 @@
-Numeros aleatoreos son a menudo en programacion de juegos e investigaciones cientificas, pero tambien ellos pueden ser utiles incluso
+Numeros aleatoreos son a menudo usados en programacion de juegos e investigaciones cientificas, pero también ellos pueden ser útiles incluso
en aplicaciones de negocios (para generar claves unicas, passwords etc.). Nosotros vamos a aprender como son
generadas y tendremos una practica con algunos metodos simples.
-Aqui está uno de los primeros metodos para producir una secuencia de semilla independiente (Es decir numeros seudoaleatores) de numeros:
+Aqui está uno de los primeros metodos para producir una secuencia de semilla independiente (Es decir numeros seudoaleatoreos):
1. Elige un valor inicial de 4 digitos (Es decir en el rango '0000...9999').
2. multiplicalo por si mismo (Es decir, elevalo a la segunda potencia) para obtener un valor de 8 digitos (añade los ceros - al inicio- faltantes si es necesario).
@@ -26,12 +26,12 @@ Resulta obvio que tarde o temprano cada secuencia llegará a una especie de bucl
0001 -> 0000 -> 0000 - llega a un bucle despues de dos iteraciones
4100 -> 8100 -> 6100 -> 2100 -> 4100 - llega a un bucle despues de 4 iteraciones
-Te seran dados valores iniciales para varias secuencias. Por cada una de ellas, reporta el numero de iteraciones necesarias
+Te serán dados valores iniciales para varias secuencias. Por cada una de ellas, reporta el numero de iteraciones necesarias
para llegar a la repeticion.
-**Datos de entrada** en la primera linea, contendran la cantidad de valores iniciales. En la segunda linea contendran los valores iniciales
+**Datos de entrada** la primera linea, contendrá la cantidad de valores iniciales. La segunda linea contendrá los valores iniciales
separados por espacios.
-**Respuesta** debe contener el numero de iteraciones para las secuencias con las cuales dado el valor inicial se convierte en bucle.
+**Respuesta** debe contener el número de iteraciones para las secuencias con las cuales dado el valor inicial se convierte en bucle.
Ejemplo:
From 4c25e4f4119cd85165810b04629e4462512fd7ab Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Fri, 11 Sep 2020 22:10:30 -0500
Subject: [PATCH 21/28] Update task-27.md
---
es/task-27.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/task-27.md b/es/task-27.md
index c2cbb11..b5dd25b 100644
--- a/es/task-27.md
+++ b/es/task-27.md
@@ -1,4 +1,4 @@
-_ podria ser util resolver [Bubble in Array](./bubble-in-array) antes de este problema._
+_ podria ser util resolver [Bubble in Array](./bubble-in-arrayarray-es) antes de este problema._
El ordenamiento de arreglos es un problema popular para los recien llegados -- y extremadamente importante en programación profesional
(bases de datos, bibliotecas etc).
From ec48f3fde09bee3766113bc19b08a0699533ad84 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Fri, 11 Sep 2020 22:24:01 -0500
Subject: [PATCH 22/28] Create task-30..md
---
es/task-30..md | 15 +++++++++++++++
1 file changed, 15 insertions(+)
create mode 100644 es/task-30..md
diff --git a/es/task-30..md b/es/task-30..md
new file mode 100644
index 0000000..535df01
--- /dev/null
+++ b/es/task-30..md
@@ -0,0 +1,15 @@
+una tarea bastante simple - solo para comenzar a aprender strings (arreglos de caracteres)...
+
+**Datos de Entrada** contendran un string sencillo en letras minusculas con algunos espacios.
+**Respuesta** debe contener la cadena de la misma longitud con los mismos caracteres pero en orden inverso.
+
+Ejemplo:
+
+ dato de entrada:
+ four score and seven years ago
+
+ respuesta:
+ oga sraey neves dna erocs ruof
+
+A pesar de que algunos lenguajes tienen incorporada alguna funcion para esto, por favor trata de desorrollarlo por tu cuenta y
+'in situ', es decir, mover caracteres del mismo string en lugar de copiarlos en uno nuevo (string o arreglo de caracteres).
From 9afefbd29d17bbf37f2412053a6acbf93c7c5735 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Fri, 11 Sep 2020 22:24:25 -0500
Subject: [PATCH 23/28] Rename task-30..md to task-30.md
---
es/{task-30..md => task-30.md} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename es/{task-30..md => task-30.md} (100%)
diff --git a/es/task-30..md b/es/task-30.md
similarity index 100%
rename from es/task-30..md
rename to es/task-30.md
From d485707b4ea66fde7c3379cb11b5951e4acaf3f0 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Fri, 11 Sep 2020 22:37:50 -0500
Subject: [PATCH 24/28] Create task-29
---
es/task-29 | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
create mode 100644 es/task-29
diff --git a/es/task-29 b/es/task-29
new file mode 100644
index 0000000..1c77123
--- /dev/null
+++ b/es/task-29
@@ -0,0 +1,29 @@
+Despues de resolver la tarea [Bubble Sort](./bubble-sort-es) suponesmos que aprendiste sobre el ordenamiento de arreglos. Ahora tenemos para tí
+un prolbema ligeramente ms complicado de programar, ya que es importante tener práctica en la clasificación y manipulación no
+sólo valores primitivos sino también de objetos más complejos.
+
+Como anteriormente, te daremos un arreglo de números. Este debe ordenarse primero (en orden no decreciente) -
+y luego, para cada valor, se debe imprimir su índice (posición) inicial (los índices comienzan desde 1).
+
+Es decir, imaginate que tenemos el arreglo `50 98 17 79` el cual se convierte en `17 50 79 98` después de ordenado. ahora:
+
+ 17 era el 3-er puesto incialmente
+ 50 era el 1-er puesto incialmente
+ 79 era el 4-to puesto incialmente
+ 98 era el 2-do puesto incialmente
+
+ así que el resultado es
+ 3 1 4 2
+
+**Datos de Entrada** contendran el tamaño del arreglo en la primera fila y los valores del mismo en la segunda
+(los enteros irán separados por espacios).
+**Respuesta** deberá contener los indices (posiciónes) iniciales del los elementos del arreglo despues de haber sido reordenados.
+
+Ejemplo:
+
+ datos de entrada:
+ 4
+ 50 98 17 79
+
+ respuesta:
+ 3 1 4 2
From 7626fa1386414c256e15f0fcfaf643d990cb7835 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 13 Sep 2020 11:20:28 -0500
Subject: [PATCH 25/28] Create task-52
---
es/task-52 | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
create mode 100644 es/task-52
diff --git a/es/task-52 b/es/task-52
new file mode 100644
index 0000000..6c24afd
--- /dev/null
+++ b/es/task-52
@@ -0,0 +1,48 @@
+
+

+
+
+Un triangulo es llamado **rectangulo** cuando uno de sus tres angulos es **angulo recto**, igual a 90° Es decir,
+dos lados de este triangulo son ortogonales. Recordemoslo.
+
+Los lados adyacentes al angulo recto de estos triangulos, son llamados **catetos** y el tercer lado es **hipotenusa**.
+El teorema estalbece que la longitud de la hipotenusa está determinada por las longitudes de los catetos a partir de esta simple formula:
+
+ c^2 = a^2 + b^2
+
+ o
+
+ c = raiz_cuadrada(a^2 + b^2)
+
+Donde `c` es la longitud de la hipotenusa, mientras `a` y `b` son las longitudes de los catetos.
+
+Es famoso el ejemplo del triangulo rectangulo donde sus lados son `3`, `4` y `5` unidades. Así, en este caso, el teorema afirma:
+
+ 5^2 = 3^2 + 4^2
+
+ or
+
+ 25 = 9 + 16
+
+En esta tarea tú usaras este teorema para escribir un programa que pueda determiar, cuando un triangulo es réctangulo,
+o si es **acutangulo*, o **obtusángulo**:
+
+- para el triangulo acutangulo el lado mas largo es más corto de lo que la hipotenusa deberia ser;
+- para el triangulo obtusangulo el lado mas largo, es más largo de lo que la hipotenusa debería ser.
+
+**Datos de Entrada** en la primera linea contendrá el numero de triangulos.
+Las siguientes lineas describen cada una un triangulo. Cuya descripción consiste en tres valores - longitudes de los lados. El valor más grande será
+siempre ser el ultimo de los tres, por motivos de simplicidad.
+**Respuestas** Debe tener una de las letras `R` (right, réctangulo), `A` (acute, acutangulo) o `O` (obtuse, obtusángulo) pr cada uno de los triangulos. La letras
+deben estar separadas por espacios.
+
+Ejemplo:
+
+ datos de entrada:
+ 3
+ 6 8 9
+ 9 12 15
+ 16 12 22
+
+ respuesta:
+ A R O
From eca794413e2df5f6b591980a4ab0eee2002bd19f Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 13 Sep 2020 11:22:09 -0500
Subject: [PATCH 26/28] Create task-67
---
es/task-67 | 45 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)
create mode 100644 es/task-67
diff --git a/es/task-67 b/es/task-67
new file mode 100644
index 0000000..c58db05
--- /dev/null
+++ b/es/task-67
@@ -0,0 +1,45 @@
+Even beginner programmers are usually acquainted with the **Fibonacci Sequence** which is generated as following:
+
+- 0-th value is `0`;
+- 1-st value is `1`;
+- all next values are sum of two immediately preceeding.
+
+So we have:
+
+ 0: 0
+ 1: 1
+ 2: 1 = 0 + 1
+ 3: 2 = 1 + 1
+ 4: 3 = 1 + 2
+ 5: 5 = 2 + 3
+ 6: 8 = 3 + 5
+
+and so on, so if you continue calculations yourself, you get the the beginning of the sequence like this:
+
+ 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, ...
+
+One easily notes that values grow fast! The `17-th` value already exceeds `thousand`, the `31-st` is larger
+than `million`.
+
+**Problem statement**
+
+You will be given several Fibonacci numbers. Your task is to tell their indices in the sequence.
+
+**Input data** contain the amount of Fibonacci numbers to process.
+Next lines contain one Fibonacci number each (from the first `1000` values).
+**Answer** should contain their indices in the sequence, separated by spaces.
+
+Example:
+
+ input data:
+ 5
+ 610
+ 34
+ 0
+ 1346269
+ 10946
+
+ answer:
+ 15 9 0 31 21
+
+*Take care: values could be of hundred or more digits long!*
From 104aa19f3d7136d3df55595f8840a21cbbf65e4f Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Sun, 13 Sep 2020 11:33:55 -0500
Subject: [PATCH 27/28] Update task-67
---
es/task-67 | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/es/task-67 b/es/task-67
index c58db05..66e1281 100644
--- a/es/task-67
+++ b/es/task-67
@@ -1,10 +1,10 @@
-Even beginner programmers are usually acquainted with the **Fibonacci Sequence** which is generated as following:
+Incluso un programador novato está usualmente familiarizado con **La secuencia de fibonacci** la cual es generada de la siguente manera:
-- 0-th value is `0`;
-- 1-st value is `1`;
-- all next values are sum of two immediately preceeding.
+- 0- valor es `0`;
+- 1-er valor es `1`;
+- todos los siguientes valores son la suma de los dos predecesores inmediatos.
-So we have:
+Así tenemos:
0: 0
1: 1
@@ -14,24 +14,24 @@ So we have:
5: 5 = 2 + 3
6: 8 = 3 + 5
-and so on, so if you continue calculations yourself, you get the the beginning of the sequence like this:
+y sucesivamente, si tú continuas calculadolo por ti mismo, obtendras la siguiente secuencia inicial:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, ...
-One easily notes that values grow fast! The `17-th` value already exceeds `thousand`, the `31-st` is larger
-than `million`.
+Puedes percatarte de que los valores crecen muy rapido! El `lugar-17` está cercano a exceder a mil, `lugar 31`
+es más grande que un `millón`.
-**Problem statement**
+**Planteamiento del problema**
-You will be given several Fibonacci numbers. Your task is to tell their indices in the sequence.
+Se te daran varios numeros de la secuencia de Fibonacci. Tu tarea es dar los indices de dicha secuencia.
-**Input data** contain the amount of Fibonacci numbers to process.
-Next lines contain one Fibonacci number each (from the first `1000` values).
-**Answer** should contain their indices in the sequence, separated by spaces.
+**Datos de entrada** En la primera linea contiene el numero de datos que se te darán.
+Las siguientes lineas contienen un numero de fibonacci cada una (desde los primeros `1000` valores).
+**Respuesta** deberá contener los indices en la secuencia, separados por espacios.
-Example:
+Ejemplo:
- input data:
+ datos de entrada:
5
610
34
@@ -39,7 +39,7 @@ Example:
1346269
10946
- answer:
+ respuesta:
15 9 0 31 21
-*Take care: values could be of hundred or more digits long!*
+*Sé cuidadoso: Los valores podrián ser de cientos o más digitos de longitud!*
From a34605aa789d493132498639f2816a2e9d427f73 Mon Sep 17 00:00:00 2001
From: David Ernesto Ramirez Arboleda
<69372872+MultivacR@users.noreply.github.com>
Date: Mon, 14 Sep 2020 22:01:53 -0500
Subject: [PATCH 28/28] Create task-35
---
es/task-35 | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
create mode 100644 es/task-35
diff --git a/es/task-35 b/es/task-35
new file mode 100644
index 0000000..29168e0
--- /dev/null
+++ b/es/task-35
@@ -0,0 +1,38 @@
+
+Joel quiere comprar un bote que cuesta `$10000`. Sin embargo, el actualmente tiene solo `$1000`. Una de las formas de hacer crecer su dinero
+es ponerle en una cuenta bancaria y esperar. Por ejemplo, si la cuenta incrementa un `8%` cada año:
+
+ año dinero
+ 0 1000
+ 1 1080
+ 2 1166.4
+ 3 1259.71
+ 4 1360.48
+ 5 1469.31
+ 6 1586.85
+ .....
+ 29 9316.82
+ 30 10062.16
+
+Entonces Joel puede hacer crecer su dinero en `30` años. Ademas, si la cuenta crece, no anualmente sino mensual (con la
+misma tasa de interes de `8%` al año) entonces la suma sera alcanzada en solo `29` años!
+then Joel can grow his money in `30` years. Moreover, if account is increased not annually but monthly (with the
+same interest rate of `8%` per year) then the sum will be collected in only `29` years! Bastante divertido :)
+
+En esta tarea tú necesitas ayudar a Joel a calcular cuantos años necesita esperar dependiendo de una suma inicial
+de dinero `S`, requiere una suma `R` y una tasa de interes bancaria `P`. Al final de cada año la cuenta es aumentada y
+**redondeada hacia abajo** hasta centavos ( como en el ejemplo de arriba).
+
+**Datos de entrada** En la primera linea contendrá el numero de casos a testiar.
+Cada una de las siguientes lineas contiene tres numeros`S`, `R` y `P`.
+**Respuesta** deberá contener el numero de años a esperar en cada caso, separados por espacios.
+
+Ejemplo:
+
+ datos de entrada:
+ 2
+ 1000 10000 8
+ 50 100 25
+
+ respuesta:
+ 30 4