• Skip to primary navigation
  • Skip to main content
  • Skip to footer

Cursos online y materiales digitales para estudiantes y desarrolladores web

  • CURSOS
  • BLOG
  • QUIÉN SOY
  • FAQ
  • ACCEDER
  • CONTACTO

Reto resuelto: gestión de pasajeros del expreso de Hogwarts

Publicado el 21/05/2020 por Ada Leave a Comment

Harry Potter

Harry Potter

Programación

Procesar un array bidimensional


Una semana más recibimos un reto desde el mismo Colegio Hogwarts de Magia y Hechicería que titulamos “Gestión de pasajeros del expreso de Hogwarts“.

Enunciado del reto:

El reto decía:

Señorita Ada:
Necesitamos controlar el número de pasajeros que llegan al final de un trayecto teniendo en cuenta cuántos suben y bajan en cada parada.
Le facilitaremos una lista del tipo: [s1,b1][s2,b2][s3,b3]… donde en cada par de elementos va el número de pasajeros que se suben (s) y el número de pasajeros que se bajan (b). Así, procesando esa lista, sabremos el número de pasajeros finales que debería llegar a fin de trayecto.
Ejemplo de entrada: [[7,0][8,2][9,5][3,1]]
Ejemplo de salida: 19 pasajeros
* Nota: En el primer par de números, el segundo siempre será 0 porque en la estación de origen no se baja nadie. No hace falta controlar ese número: se lo facilitaremos siempre de manera correcta.

Para solventarlo se nos ocurrió hacerlo de dos maneras:

  • Una clásica, que desde el punto de vista de la algoritmia es aplicable a la mayoría del resto de lenguajes de programación de alto nivel (Java, C, C++…).
  • Otra propia de Javascript que utiliza una interesante función llamada reduce.

Pero recordad, ¡no hay una única solución al problema; hay soluciones mejores y soluciones peores!

¿Qué aprenderás en el vídeo?

Así que en este vídeo os explico:

  • Cómo procesar un array bidimensional utilizando un bucle for.
  • Cómo funciona la función reduce de Javascript para convertir un array en un único valor.
  • Cómo trabajar con la función reduce y una función arrow pasándole el array de dos modos diferentes.

Vídeos y código fuente

¡Al lío! ¡Echa un ojo al vídeo!

Código fuente de la solución
[restrict] [/restrict] [not_logged_in]¡Ups! Este contenido es solo para codelovers, ¿no te has registrado aún? ¡Hazlo ahora! ¡Regístrate o accede!
[/not_logged_in]

¿Tú cómo lo habrías hecho? ¡Deja tus ideas en los comentarios!

Y si quieres compartir código, te recomiendo que utilices alguna herramienta online de testing de código como Codepen, JSFiddle, PlayCode, etc. o repositorios como GitHub, GitLab, BitBucket…

Filed Under: Ejercicio resuelto, Reto Tagged With: array, harry potter, javascript, reto

Reader Interactions

Deja una respuesta Cancelar la respuesta

Lo siento, debes estar conectado para publicar un comentario.

Footer

Didacticode

Cursos para estudiantes y docentes del mundo de la informática.
Retos: retos resueltos de programación.
Tips&Tricks: trucos y consejos.
Boleticodes: boletines de noticias.
Quiénes somos: Ada, Edu... y Laura.
Contacto¡Contacta conmigo!

Legal

Aviso legal
Política de privacidad
Cookies

Redes Sociales

Youtube
Twitter
Instagram
Facebook
Twitch
LinkedIn
Gitlab
Github

Didacticode © 2026

¡Cómo no! Este sitio también utiliza cookies para mejorar la experiencia de tu visita.

Puedes informarte más sobre qué cookies estamos utilizando o desactivarlas en los .

Resumen de privacidad
Didacticode

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Cookies estrictamente necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.