Retos semanales de la comunidad MoureDev para practicar Swift & iOS.
Si quieres realizar los retos de programación en otro lenguaje, utiliza el repositorio de retos semanales principal.
También puedes unirte a nuestra actividad mensual de creación de aplicaciones.
El proyecto principal de retos de programación semanales en Swift se ha creado utilizando Xcode.
Tienes las soluciones de la comunidad en Pull Requests.
Tienes toda la información extendida sobre los retos de programación semanales y mensuales en retosdeprogramacion.com.
EL FAMOSO "FIZZ BUZZ"
¿ES UN ANAGRAMA?
LA SUCESIÓN DE FIBONACCI
¿ES UN NÚMERO PRIMO?
ÁREA DE UN POLÍGONO
ASPECT RATIO DE UNA IMAGEN
INVIRTIENDO CADENAS
CONTANDO PALABRAS
DECIMAL A BINARIO
CÓDIGO MORSE
EXPRESIONES EQUILIBRADAS
ELIMINANDO CARACTERES
¿ES UN PALÍNDROMO?
FACTORIAL RECURSIVO
¿ES UN NÚMERO DE ARMSTRONG?
¿CUÁNTOS DÍAS?
EN MAYÚSCULA
LA CARRERA DE OBSTÁCULOS
TRES EN RAYA
CONVERSOR TIEMPO
PARANDO EL TIEMPO
CALCULADORA .TXT
CONJUNTOS
MÁXIMO COMÚN DIVISOR Y MÍNIMO COMÚN MÚLTIPLO
ITERATION MASTER
PIEDRA, PAPEL, TIJERA
CUADRADO Y TRIÁNGULO 2D
VECTORES ORTOGONALES
MÁQUINA EXPENDEDORA
ORDENA LA LISTA
MARCO DE PALABRAS
AÑOS BISIESTOS
EL SEGUNDO
CICLO SEXAGENARIO CHINO
LOS NÚMEROS PERDIDOS
BATALLA POKÉMON
LOS ANILLOS DE PODER
LOS LANZAMIENTOS DE "THE LEGEND OF ZELDA"
BINARIO A DECIMAL
TOP ALGORITMOS: QUICK SORT
TRIÁNGULO DE PASCAL
LA LEY DE OHM
CONVERSOR DE TEMPERATURA
TRUCO O TRATO
BUMERANES
CONTENEDOR DE AGUA
¿DÓNDE ESTÁ EL ROBOT?
VOCAL MÁS COMÚN
EL CALENDARIO DE ADEVIENTO 2022
EL DETECTOR DE HANDLES
LA ENCRIPTACIÓN DE KARACA
EL RETO RANDOM
Corrección retos del 0 al 4 en vídeo
Corrección retos del 5 al 10 en vídeo
Corección retos del 11 al 20 en vídeo
Corección retos del 21 al 30 en vídeo
Corección retos del 31 al 40 en vídeo
Corección retos del 41 al 46 en vídeo
Corección retos del 47 al 51 en vídeo
Puedes hacer libremente un fork del proyecto y trabajar con Git para ir sincronizando las actualizaciones del proyecto.
Cada lunes se publicará un nuevo reto de código.
Cada reto será un nuevo fichero dentro de WeeklyChallenge2022.playground
donde se indicará la fecha, el enunciado y la información necesaria para llevarlo a cabo.
Se comunicará en el canal #🔁reto-semanal
de Discord, en directo desde Twitch y se subirá el enunciado al repositorio.
Dispondrás de una semana para resolverlo, preguntar tus dudas, debatir y aportar ayuda en el canal de Discord.
El lunes siguiente se subirá la resolución al repositorio, se comentará en directo desde Twitch (utilizando alguna solución de entre los asistentes o que se haya realizado una pull request al proyecto) y se añadirá el nuevo reto semanal.
Comenzará de nuevo el proceso.
Si no dispones de un editor de código como Xcode, puedes usar un playground online (http://online.swiftplayground.run/) para probar tu código.
Si utilizas un editor como Xcode, puedes ejecutar el código pulsando el símbolo "play ►" en el lateral.
Si quieres unirte a nuestra comunidad de desarrollo, aprender programación de Apps, mejorar tus habilidades y ayudar a la continuidad del proyecto, puedes encontrarnos en:
Deberás realizar flujos de actualización, sincronización y pull request
desde tu fork
del proyecto hacia el principal (habitualmente nombrado como upstream/main
).
Todo esto se puede hacer desde línea de comandos, pero si prefieres puedes usar clientes gráficos como GitHub Desktop (muy simple) o GitKraken (más avanzado y potente).
branch
(rama) para resolver cada reto y así simplificar la pull request
. También puedes ignorar ciertos ficheros.commit
y push
del mismo a tu proyecto.fork
verás opciones como "Contribute" o "Fetch upstream":
Contribute
permite abrir una pull request
(deberás seleccionar el mío como repositorio base contra el que comparar tu proyecto). Así yo podré ver los ficheros modificados de tu proyecto con la solución a los retos. Intenta que el título de la pull request
siga esta convención: "Solución Reto #[número del reto]" (Solución Reto #0).Fetch upstream
permite sincronizar tu proyecto con el original en caso de que se haya actualizado.merge commit
, squash merge
o rebase
(ten en cuenta que cada uno se comporta de una manera, conservando o no tus propios cambios).pull request
para dejar paso a las que se hagan para el nuevo reto.Soy ingeniero de software desde hace más de 12 años. Desde hace 4 años combino mi trabajo desarrollando Apps con creación de contenido formativo sobre programación y tecnología en diferentes redes sociales como @mouredev.