Cada semana un nuevo ejercicio para mejorar tu lógica de programación.

 
Totalmente gratis y a tu ritmo
Basados en pruebas técnicas y entrevistas de trabajo
Usa el lenguaje de programación que quieras
En constante actualización
Corrección y revisión en directo
Con el apoyo de la comunidad. Soluciones a los ejercicios en lenguajes como Kotlin, Swift, JavaScript, TypeScript, Go, Rust, Python, C#, Dart, PHP, Java, Cobol…
 
¿Te parece útil? Compártelo en Twitter
 

→ ¿CÓMO PUEDO PARTICIPAR EN LOS RETOS?

Recuerda que puedes utilizar cualquier lenguaje para resolver los ejercicios.
 
Puedes seguir los siguientes pasos (haz clic para verlos)
  1. ACCEDE al repositorio de GitHub.
  1. Si quieres apoyar el proyecto, puedes hacer "✭ Star” en este.
  1. Haz un FORK del repositorio. En el README del repositorio tienes información más detallada.
  1. En el proyecto tienes un directorio para cada ejercicio. Dentro de cada directorio encontrarás un fichero llamado ejercicio.md con el enunciado de cada reto.
  1. Si quieres compartir tu propia solución de un ejercicio con la comunidad, crea un fichero de código con tu nombre y extensión, y realiza una PULL REQUEST contra el repositorio.
  1. El fichero de código debe situarse dentro del directorio del reto, en la carpeta correspondiente al lenguaje de programación utilizado (si no existe la carpeta del lenguaje, créala con todas sus letras en minúsculas). Por ejemplo, si has resuelto el reto #0 utilizando el lenguaje de programación Kotlin y tu usuario de GitHub se llama mouredev, tu corrección deberá estar en "Retos/Reto #0/kotlin/mouredev.kt”. El título de la Pull Request también debe seguir este formato: "Reto #[número] - [lenguaje_utilizado]”. En el ejemplo anterior sería “Reto #0 - Kotlin". Se rechazarán las Pull Request que no sigan este formato o contengan ficheros adicionales.
  1. Cada SEMANA (consulta el día en el ejercicio correspondiente) realizaré una transmisión en directo desde Twitch corrigiendo el reto, revisando soluciones de la comunidad y publicando un nuevo ejercicio.
  1. Si necesitas ayuda o quieres comentar cualquier cosa sobre los retos semanales, tienes el canal "reto-semanal” en nuestro servidor de Discord (también el día y horario de corrección en la sección “Eventos”).
  1. Puedes proponer Pull Request con propuestas o correcciones sobre ejercicios del resto de la comunidad si estos poseen errores.
  1. Si se te solicita un cambio/corrección en una Pull Request, y al cabo de 2 semanas no se muestra nueva actividad, se cerrará esa petición para mantener el repositorio limpio. Por supuesto, puedes volver a enviar la Pull Request cuando quieras.
 
Guía rápida de Git y GitHub
  1. Hacer un FORK del repositorio de retos semanales desde GitHub.
  1. CLONAR ese repositorio a tu máquina local:
    1. git clone [TU-REPOSITORIO]
  1. Crear una RAMA para la solución:
    1. git checkout [EL-NOMBRE-DE-TU-RAMA]
  1. Añadir el fichero de tu solución al STAGE:
    1. git add [FICHERO-DE-TU-RETO]
  1. Hacer COMMIT con mensaje de la solución:
    1. git commit -m "Reto #[NÚMERO-RETO] [LENGUAJE-UTILIZADO]"
  1. Hacer PUSH:
    1. git push [EL-NOMBRE-DE-TU-RAMA]
  1. En nuestro repositorio ir a la rama y hacer PULL REQUEST:
    1. Contribute
    2. Create Pull Request
 

→ PREGUNTAS FRECUENTES

 
¿Puedo utilizar cualquier lenguaje de programación para aportar mi solución?
Por supuesto. Recuerda que lo más importante es entender los pasos lógicos que hemos seguido para llegar a una solución. Los lenguajes de programación suelen ser muy parecidos entre ellos.
¿Puedo resolver un reto si no he realizado los anteriores?
Claro. Los retos no tienen relación entre ellos. Puedes resolverlos de manera totalmente independiente. Simplemente revisa su nivel de dificultad.
¿Cómo consulto las correcciones de un reto?
Una vez se haya cumplido la semana de publicación del reto, podrás consultar mi corrección y las de la comunidad en cualquier lenguaje de programación.
¿Qué pasa si encuentro un error en alguna corrección de un ejercicio?
Como en cualquier programa, pueden existir bugs. Si detectas alguno, simplemente realiza una Pull Request con tu corrección. De esta manera colaboraremos para crear un repositorio cada vez más valioso.
Nombres de directorios "conflictivos" para lenguajes programación
Si tienes dudas con el nombre del directorio de algún lenguaje, intenta consultar el nombre que se ha empleado en ejercicios anteriores. Algunos ejemplos que puedes llegar a dudar:
  • c#, no csharp
  • c++, no cplusplus
  • go, no golang
  • javascript, no js
 
 

¿Quieres estar al tanto de todas las novedades, preguntar dudas o prestar ayuda a la comunidad?

Únete a los canales de chat "reto-semanal” y "reto-mensual” de nuestro servidor gratuito de Discord y consulta la sección “eventos” para no perderte los directos en los que corregimos los ejercicios.
 

RETO DE LA SEMANA ↓

Este es el ejercicio que se está llevando a cabo durante la semana actual. ¿Te animas a participar junto a la comunidad?
 
NOTAS PULL REQUEST:
  • Cuando realices una Pull Request para aportar tu solución al ejercicio sigue esta convención: “Retos/[directorio_reto]/[lenguaje_utilizado]/[usuario_github.extension]" (Ej: Retos/Reto #0/kotlin/mouredev.kt)
  • Para mantener una uniformidad, vamos a intentar mantener una estructura en el título de la Pull Request: "Reto #[número] - [lenguaje_utilizado]” (Ej: Reto #0 - Kotlin)
  • Si la Pull Request no se corresponde con una corrección del ejercicio, describe con claridad en su título y mensaje cuál es la finalidad de esta. Puedes proponer cambios y correcciones en ejercicios del resto de la comunidad si estos no son correctos.
 

Reto #39: TRIPLES PITAGÓRICOS

MEDIA | Publicación: 02/10/23 | Resolución: 09/10/23
/* * Crea una función que encuentre todos los triples pitagóricos * (ternas) menores o iguales a un número dado. * - Debes buscar información sobre qué es un triple pitagórico. * - La función únicamente recibe el número máximo que puede * aparecer en el triple. * - Ejemplo: Los triples menores o iguales a 10 están * formados por (3, 4, 5) y (6, 8, 10). */
 
Corrección y nuevo reto: Lunes 09/10/23

RETOS CORREGIDOS ↓

Estos son los ejercicios pasados que ya poseen mi corrección y las de la comunidad. Están ordenados desde el más reciente y en cada uno de ellos encontrarás las soluciones agrupadas por lenguaje de programación.
 

Reto #38: LAS SUMAS

MEDIA | Publicación: 25/09/23 | Resolución: 02/10/23
/* * Crea una función que encuentre todas las combinaciones de los números * de una lista que suman el valor objetivo. * - La función recibirá una lista de números enteros positivos * y un valor objetivo. * - Para obtener las combinaciones sólo se puede usar * una vez cada elemento de la lista (pero pueden existir * elementos repetidos en ella). * - Ejemplo: Lista = [1, 5, 3, 2], Objetivo = 6 * Soluciones: [1, 5] y [1, 3, 2] (ambas combinaciones suman 6) * (Si no existen combinaciones, retornar una lista vacía) */
Correcciones:

Reto #37: COLORES HEX Y RGB

MEDIA | Publicación: 18/09/23 | Resolución: 25/09/23
/* * Crea las funciones capaces de transformar colores HEX * a RGB y viceversa. * Ejemplos: * RGB a HEX: r: 0, g: 0, b: 0 -> #000000 * HEX a RGB: hex: #000000 -> (r: 0, g: 0, b: 0) */
Correcciones:

Reto #36: PERMUTACIONES

MEDIA | Publicación: 04/09/23 | Resolución: 18/09/23
/* * Crea un programa que sea capaz de generar e imprimir todas las * permutaciones disponibles formadas por las letras de una palabra. * - Las palabras generadas no tienen por qué existir. * - Deben usarse todas las letras en cada permutación. * - Ejemplo: sol, slo, ols, osl, los, lso */
Correcciones:

Reto #35: PRIMEROS PASOS

MEDIA | Publicación: 21/08/23 | Resolución: 28/08/23
/* * Como cada año, el día 256 se celebra el "Día de la Programación". * En nuestra comunidad siempre hacemos una gran fiesta donde repartirmos * 256 regalos para seguir aprendiendo programación: * https://diadelaprogramacion.com * * Para seguir ayudando, te propongo este reto: * Mostrar la sintaxis de los principales elementos de un lenguaje * en TODOS los lenguajes de programación que podamos. ¿Llegaremos a 50? * * En un fichero, haz lo siguiente (si el lenguaje lo soporta), * y comenta cada bloque para identificar con qué se corresponde: * - Haz un "Hola, mundo!" * - Crea variables de tipo String, numéricas (enteras y decimales) * y Booleanas (o cualquier tipo de dato primitivo). * - Crea una constante. * - Usa un if, else if y else. * - Crea estructuras como un array, lista, tupla, set y diccionario. * - Usa un for, foreach y un while. * - Crea diferentes funciones (con/sin parámetros y con/sin retorno). * - Crea una clase. * - Muestra el control de excepciones. * * Así, cualquier persona podrá consultar rápidamente diferentes ejemplos * de sintaxis básica de muchos lenguajes. * * ¡Muchas gracias! */
Correcciones:

Reto #34: EL TXT

MEDIA | Publicación: 21/08/23 | Resolución: 28/08/23
/* * Crea un programa capaz de interactuar con un fichero TXT. * IMPORTANTE: El fichero TXT NO debe subirse como parte de la corrección. * Únicamente el código. * * - Si no existe, debe crear un fichero llamado "text.txt". * - Desde el programa debes ser capaz de introducir texto por consola y guardarlo * en una nueva línea cada vez que se pulse el botón "Enter". * - Si el fichero existe, el programa tiene que dar la opción de seguir escribiendo * a continuación o borrar su contenido y comenzar desde el principio. * - Si se selecciona continuar escribiendo, se tiene que mostrar por consola * el texto que ya posee el fichero. */
Correcciones:

Reto #33: TETRIS

MEDIA | Publicación: 07/08/23 | Resolución: 14/08/23
/* * Crea un programa capaz de gestionar una pieza de Tetris. * - La pantalla de juego tiene 10 filas y 10 columnas representadas por símbolos 🔲 * - La pieza de tetris a manejar será la siguiente (si quieres, puedes elegir otra): * 🔳 * 🔳🔳🔳 * - La pieza aparecerá por primera vez en la parte superior izquierda de la pantalla de juego. * 🔳🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔳🔳🔳🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * 🔲🔲🔲🔲🔲🔲🔲🔲🔲🔲 * - Debes desarrollar una función capaz de desplazar y rotar la pieza en el tablero, * recibiendo una acción cada vez que se llame, mostrando cómo se visualiza en la pantalla de juego. * - Las acciones que se pueden aplicar a la pieza son: derecha, izquierda, abajo, rotar. * - Debes tener en cuenta los límites de la pantalla de juego. */
Correcciones:

Reto #32: LA COLUMNA DE EXCEL

MEDIA | Publicación: 07/08/23 | Resolución: 14/08/23
/* * Crea una función que calcule el número de la columna de una hoja de Excel * teniendo en cuenta su nombre. * - Las columnas se designan por letras de la "A" a la "Z" de forma infinita. * - Ejemplos: A = 1, Z = 26, AA = 27, CA = 79. */
Correcciones:

Reto #31: EL ÁBACO

FÁCIL | Publicación: 31/07/23 | Resolución: 07/08/23
/* * Crea una función que sea capaz de leer el número representado por el ábaco. * - El ábaco se representa por un array con 7 elementos. * - Cada elemento tendrá 9 "O" (aunque habitualmente tiene 10 para realizar * operaciones) para las cuentas y una secuencia de "---" para el alambre. * - El primer elemento del array representa los millones, y el último las unidades. * - El número en cada elemento se representa por las cuentas que están a * la izquierda del alambre. * * Ejemplo de array y resultado: * ["O---OOOOOOOO", * "OOO---OOOOOO", * "---OOOOOOOOO", * "OO---OOOOOOO", * "OOOOOOO---OO", * "OOOOOOOOO---", * "---OOOOOOOOO"] * * Resultado: 1.302.790 */
Correcciones:

Reto #30: EL TECLADO T9

MEDIA | Publicación: 24/07/23 | Resolución: 31/07/23
/* * Los primeros dispositivos móviles tenían un teclado llamado T9 * con el que se podía escribir texto utilizando únicamente su * teclado numérico (del 0 al 9). * * Crea una función que transforme las pulsaciones del T9 a su * representación con letras. * - Debes buscar cuál era su correspondencia original. * - Cada bloque de pulsaciones va separado por un guión. * - Si un bloque tiene más de un número, debe ser siempre el mismo. * - Ejemplo: * Entrada: 6-666-88-777-33-3-33-888 * Salida: MOUREDEV */
Correcciones:

Reto #29: EL CARÁCTER INFILTRADO

FÁCIL | Publicación: 17/07/23 | Resolución: 24/07/23
/* * Crea una función que reciba dos cadenas de texto casi iguales, * a excepción de uno o varios caracteres. * La función debe encontrarlos y retornarlos en formato lista/array. * - Ambas cadenas de texto deben ser iguales en longitud. * - Las cadenas de texto son iguales elemento a elemento. * - No se pueden utilizar operaciones propias del lenguaje * que lo resuelvan directamente. * * Ejemplos: * - Me llamo mouredev / Me llemo mouredov -> ["e", "o"] * - Me llamo.Brais Moure / Me llamo brais moure -> [" ", "b", "m"] */
Correcciones:

Reto #28: EXPRESIÓN MATEMÁTICA

MEDIA | Publicación: 10/07/23 | Resolución: 17/07/23
/* * Crea una función que reciba una expresión matemática (String) * y compruebe si es correcta. Retornará true o false. * - Para que una expresión matemática sea correcta debe poseer * un número, una operación y otro número separados por espacios. * Tantos números y operaciones como queramos. * - Números positivos, negativos, enteros o decimales. * - Operaciones soportadas: + - * / % * * Ejemplos: * "5 + 6 / 7 - 4" -> true * "5 a 6" -> false */
Correcciones:

Reto #27: CUENTA ATRÁS

MEDIA | Publicación: 03/07/23 | Resolución: 10/07/23
/* * Crea una función que reciba dos parámetros para crear una cuenta atrás. * - El primero, representa el número en el que comienza la cuenta. * - El segundo, los segundos que tienen que transcurrir entre cada cuenta. * - Sólo se aceptan números enteros positivos. * - El programa finaliza al llegar a cero. * - Debes imprimir cada número de la cuenta atrás. */
Correcciones:

Reto #26: TESTING

MEDIA | Publicación: 26/06/23 | Resolución: 03/06/23
/* * Crea tres test sobre el reto 12: "Viernes 13". * - Puedes copiar una solución ya creada por otro usuario en * el lenguaje que estés utilizando. * - Debes emplear un mecanismo de ejecución de test que posea * el lenguaje de programación que hayas seleccionado. * - Los tres test deben de funcionar y comprobar * diferentes situaciones (a tu elección). */
Correcciones:

Reto #25: EL CÓDIGO KONAMI

MEDIA | Publicación: 19/06/23 | Resolución: 26/06/23
/* * Crea un programa que detecte cuando el famoso "Código Konami" se ha * introducido correctamente desde el teclado. * Si sucede esto, debe notificarse mostrando un mensaje en la terminal. */
Correcciones:

Reto #24: CIFRADO CÉSAR

FÁCIL | Publicación: 12/06/23 | Resolución: 19/06/23
/* * Crea un programa que realize el cifrado César de un texto y lo imprima. * También debe ser capaz de descifrarlo cuando así se lo indiquemos. * * Te recomiendo que busques información para conocer en profundidad cómo * realizar el cifrado. Esto también forma parte del reto. */
Correcciones:

Reto #23: LA BASE DE DATOS

MEDIA | Publicación: 06/06/23 | Resolución: 12/06/23
/* * Realiza una conexión desde el lenguaje que hayas seleccionado a la siguiente * base de datos MySQL: * - Host: mysql-5707.dinaserver.com * - Port: 3306 * - User: mouredev_read * - Password: mouredev_pass * - Database: moure_test * * Una vez realices la conexión, lanza la siguiente consulta e imprime el resultado: * - SELECT * FROM `challenges` * * Se pueden usar librerías para realizar la lógica de conexión a la base de datos. */
Correcciones:

Reto #22: LA ESPIRAL

MEDIA | Publicación: 29/05/23 | Resolución: 06/06/23
/* * Crea una función que dibuje una espiral como la del ejemplo. * - Únicamente se indica de forma dinámica el tamaño del lado. * - Símbolos permitidos: ═ ║ ╗ ╔ ╝ ╚ * * Ejemplo espiral de lado 5 (5 filas y 5 columnas): * ════╗ * ╔══╗║ * ║╔╗║║ * ║╚═╝║ * ╚═══╝ */
Correcciones:

Reto #21: NÚMEROS PRIMOS GEMELOS

MEDIA | Publicación: 22/05/23 | Resolución: 29/05/23
/* * Crea un programa que encuentre y muestre todos los pares de números primos * gemelos en un rango concreto. * El programa recibirá el rango máximo como número entero positivo. * * - Un par de números primos se considera gemelo si la diferencia entre * ellos es exactamente 2. Por ejemplo (3, 5), (11, 13) * * - Ejemplo: Rango 14 * (3, 5), (5, 7), (11, 13) */
Correcciones:

Reto #20: LA TRIFUERZA

MEDIA | Publicación: 15/05/23 | Resolución: 22/05/23
/* * ¡El nuevo "The Legend of Zelda: Tears of the Kingdom" ya está disponible! * * Crea un programa que dibuje una Trifuerza de "Zelda" * formada por asteriscos. * - Debes indicarle el número de filas de los triángulos con un entero positivo (n). * - Cada triángulo calculará su fila mayor utilizando la fórmula 2n-1. * * Ejemplo: Trifuerza 2 * * * * *** * * * * *** *** * */
Correcciones:

Reto #19: ANÁLISIS DE TEXTO

MEDIA | Publicación: 11/05/23 | Resolución: 15/05/23
/* * Crea un programa que analice texto y obtenga: * - Número total de palabras. * - Longitud media de las palabras. * - Número de oraciones del texto (cada vez que aparecen un punto). * - Encuentre la palabra más larga. * * Todo esto utilizando un único bucle. */
Correcciones:

Reto #18: WEB SCRAPING

DIFÍCIL | Publicación: 01/05/23 | Resolución: 11/05/23
/* * El día 128 del año celebramos en la comunidad el "Hola Mundo day" * Vamos a hacer "web scraping" sobre su sitio web: https://holamundo.day * * Crea un programa que se conecte a la web del evento e imprima únicamente la agenda de eventos * del día 8. Mostrando hora e información de cada uno. * Ejemplo: "16:00 | Bienvenida" * * Se permite utilizar librerías que nos faciliten esta tarea. * */
Correcciones:

Reto #17: GIT Y GITHUB

DIFÍCIL | Publicación: 24/04/23 | Resolución: 01/05/23
/* * ¡Estoy de celebración! He publicado mi primer libro: * "Git y GitHub desde cero" * - Papel: mouredev.com/libro-git * - eBook: mouredev.com/ebook-git * * ¿Sabías que puedes leer información de Git y GitHub desde la gran * mayoría de lenguajes de programación? * * Crea un programa que lea los últimos 10 commits de este repositorio y muestre: * - Hash * - Autor * - Mensaje * - Fecha y hora * * Ejemplo de salida: * Commit 1 (el más reciente) | 12345A | MoureDev | Este es un commit | 24/04/2023 21:00 * * Se permite utilizar librerías que nos faciliten esta tarea. * */
Correcciones:

Reto #16: LA ESCALERA

MEDIA | Publicación: 17/04/23 | Resolución: 24/04/23
/* * Crea una función que sea capaz de transformar Español al lenguaje básico * del universo Star Wars: el "Aurebesh". * - Puedes dejar sin transformar los caracteres que no existan en "Aurebesh". * - También tiene que ser capaz de traducir en sentido contrario. * * ¿Lo has conseguido? Nómbrame en twitter.com/mouredev y escríbeme algo en Aurebesh. * * ¡Que la fuerza os acompañe! */
Correcciones:

Reto #15: AUREBESH

FÁCIL | Publicación: 10/04/23 | Resolución: 17/04/23
/* * Crea una función que sea capaz de transformar Español al lenguaje básico * del universo Star Wars: el "Aurebesh". * - Puedes dejar sin transformar los caracteres que no existan en "Aurebesh". * - También tiene que ser capaz de traducir en sentido contrario. * * ¿Lo has conseguido? Nómbrame en twitter.com/mouredev y escríbeme algo en Aurebesh. * * ¡Que la fuerza os acompañe! */
Correcciones:

Reto #14: OCTAL Y HEXADECIMAL

FÁCIL | Publicación: 03/04/23 | Resolución: 10/04/23
/* * Crea una función que reciba un número decimal y lo trasforme a Octal * y Hexadecimal. * - No está permitido usar funciones propias del lenguaje de programación que * realicen esas operaciones directamente. */
Correcciones:

Reto #13: ADIVINA LA PALABRA

FÁCIL | Publicación: 27/03/23 | Resolución: 03/04/23
/* * Crea un pequeño juego que consista en adivinar palabras en un número máximo de intentos: * - El juego comienza proponiendo una palabra aleatoria incompleta * - Por ejemplo "m_ur_d_v", y el número de intentos que le quedan * - El usuario puede introducir únicamente una letra o una palabra (de la misma longitud que * la palabra a adivinar) * - Si escribe una letra y acierta, se muestra esa letra en la palabra. Si falla, se resta * uno al número de intentos * - Si escribe una resolución y acierta, finaliza el juego, en caso contrario, se resta uno * al número de intentos * - Si el contador de intentos llega a 0, el jugador pierde * - La palabra debe ocultar de forma aleatoria letras, y nunca puede comenzar * ocultando más del 60% * - Puedes utilizar las palabras que quieras y el número de intentos que consideres */
Correcciones:

Reto #12: VIERNES 13

FÁCIL | Publicación: 20/03/23 | Resolución: 27/03/23
/* * Crea una función que sea capaz de detectar si existe un viernes 13 * en el mes y el año indicados. * - La función recibirá el mes y el año y retornará verdadero o falso. */
Correcciones:

Reto #11: URL PARAMS

FÁCIL | Publicación: 13/03/23 | Resolución: 20/03/23
/* * Dada una URL con parámetros, crea una función que obtenga sus valores. * No se pueden usar operaciones del lenguaje que realicen esta tarea directamente. * * Ejemplo: En la url https://retosdeprogramacion.com?year=2023&challenge=0 * los parámetros serían ["2023", "0"] */
Correcciones:

Reto #10: LA API

MEDIA | Publicación: 06/03/23 | Resolución: 13/03/23
/* * Llamar a una API es una de las tareas más comunes en programación. * * Implementa una llamada HTTP a una API (la que tú quieras) y muestra su * resultado a través de la terminal. Por ejemplo: Pokémon, Marvel... * * Aquí tienes un listado de posibles APIs: * https://github.com/public-apis/public-apis */
Correcciones:

Reto #9: HETEROGRAMA, ISOGRAMA Y PANGRAMA

FÁCIL | Publicación: 27/02/23 | Resolución: 06/03/23
/* * Crea 3 funciones, cada una encargada de detectar si una cadena de * texto es un heterograma, un isograma o un pangrama. * - Debes buscar la definición de cada uno de estos términos. */
Correcciones:

Reto #8: EL GENERADOR PSEUDOALEATORIO

MEDIA | Publicación: 20/02/23 | Resolución: 27/02/23
/* * Crea un generador de números pseudoaleatorios entre 0 y 100. * - No puedes usar ninguna función "random" (o semejante) del * lenguaje de programación seleccionado. * * Es más complicado de lo que parece... */
Correcciones:

Reto #7: EL SOMBRERO SELECCIONADOR

MEDIA | Publicación: 13/02/23 | Resolución: 20/02/23
/* * Crea un programa que simule el comportamiento del sombrero selccionador del * universo mágico de Harry Potter. * - De ser posible realizará 5 preguntas (como mínimo) a través de la terminal. * - Cada pregunta tendrá 4 respuestas posibles (también a selecciona una a través de terminal). * - En función de las respuestas a las 5 preguntas deberás diseñar un algoritmo que * coloque al alumno en una de las 4 casas de Hogwarts: * (Gryffindor, Slytherin , Hufflepuff y Ravenclaw) * - Ten en cuenta los rasgos de cada casa para hacer las preguntas * y crear el algoritmo seleccionador: * Por ejemplo, en Slytherin se premia la ambición y la astucia. */
Correcciones:

Reto #6: PIEDRA, PAPEL, TIJERA, LAGARTO, SPOCK

MEDIA | Publicación: 06/02/23 | Resolución: 13/02/23
/* * Crea un programa que calcule quien gana más partidas al piedra, * papel, tijera, lagarto, spock. * - El resultado puede ser: "Player 1", "Player 2", "Tie" (empate) * - La función recibe un listado que contiene pares, representando cada jugada. * - El par puede contener combinaciones de "🗿" (piedra), "📄" (papel), * "✂️" (tijera), "🦎" (lagarto) o "🖖" (spock). * - Ejemplo. Entrada: [("🗿","✂️"), ("✂️","🗿"), ("📄","✂️")]. Resultado: "Player 2". * - Debes buscar información sobre cómo se juega con estas 5 posibilidades. */
Correcciones:

Reto #5: ¡HOLA MUNDO!

FÁCIL | Publicación: 30/01/23 | Resolución: 06/02/23
¡Tengo una gran noticia! Twitch nos ha seleccionado como #PequeñaGranComunidad por nuestra labor ayudando a aprender programación a todo el mundo. Puedes leer la noticia aquí. ¡Gracias!
¿Batimos el récord de contribuciones con este ejercicio?
/* * Escribe un !Hola Mundo! en todos los lenguajes de programación que puedas. * Seguro que hay algún lenguaje que te llama la atención y nunca has utilizado, * o quizás quieres dar tus primeros pasos... ¡Pues este es el momento! * * A ver quién se atreve con uno de esos lenguajes que no solemos ver por ahí... */
Correcciones:

Reto #4: PRIMO, FIBONACCI Y PAR

MEDIA | Publicación: 23/01/23 | Resolución: 30/01/23
/* * Escribe un programa que, dado un número, compruebe y muestre si es primo, * fibonacci y par. * Ejemplos: * - Con el número 2, nos dirá: "2 es primo, fibonacci y es par" * - Con el número 7, nos dirá: "7 es primo, no es fibonacci y es impar" */
Correcciones:

Reto #3: EL GENERADOR DE CONTRASEÑAS

MEDIA | Publicación: 16/01/23 | Resolución: 23/01/23
/* * Escribe un programa que sea capaz de generar contraseñas de forma aleatoria. * Podrás configurar generar contraseñas con los siguientes parámetros: * - Longitud: Entre 8 y 16. * - Con o sin letras mayúsculas. * - Con o sin números. * - Con o sin símbolos. * (Pudiendo combinar todos estos parámetros entre ellos) */
Correcciones:

Reto #2: EL PARTIDO DE TENIS

MEDIA | Publicación: 09/01/23 | Resolución: 16/01/23
/* * Escribe un programa que muestre cómo transcurre un juego de tenis y quién lo ha ganado. * El programa recibirá una secuencia formada por "P1" (Player 1) o "P2" (Player 2), según quien * gane cada punto del juego. * * - Las puntuaciones de un juego son "Love" (cero), 15, 30, 40, "Deuce" (empate), ventaja. * - Ante la secuencia [P1, P1, P2, P2, P1, P2, P1, P1], el programa mostraría lo siguiente: * 15 - Love * 30 - Love * 30 - 15 * 30 - 30 * 40 - 30 * Deuce * Ventaja P1 * Ha ganado el P1 * - Si quieres, puedes controlar errores en la entrada de datos. * - Consulta las reglas del juego si tienes dudas sobre el sistema de puntos. */
Correcciones:

Reto #1: EL "LENGUAJE HACKER"

FÁCIL | Publicación: 02/01/23 | Resolución: 09/01/23
/* * Escribe un programa que reciba un texto y transforme lenguaje natural a * "lenguaje hacker" (conocido realmente como "leet" o "1337"). Este lenguaje * se caracteriza por sustituir caracteres alfanuméricos. * - Utiliza esta tabla (https://www.gamehouse.com/blog/leet-speak-cheat-sheet/) * con el alfabeto y los números en "leet". * (Usa la primera opción de cada transformación. Por ejemplo "4" para la "a") */
Correcciones:

Reto #0: EL FAMOSO "FIZZ BUZZ”

FÁCIL | Publicación: 26/12/22 | Resolución: 02/01/23
/* * Escribe un programa que muestre por consola (con un print) los * números de 1 a 100 (ambos incluidos y con un salto de línea entre * cada impresión), sustituyendo los siguientes: * - Múltiplos de 3 por la palabra "fizz". * - Múltiplos de 5 por la palabra "buzz". * - Múltiplos de 3 y de 5 a la vez por la palabra "fizzbuzz". */
Correcciones: