AD

¿Ya dominas lo básico? Un curso estructurado de Ruby es la vía rápida para dar el salto.

Ver cursos de Ruby en Udemy

Enlace de afiliado. No te cuesta nada extra.

💎Lecciones de Ruby
Lección 63 / 68

Comprobar el equilibrio de los paréntesis

En esta lección comprobarás si los paréntesis, corchetes y llaves de un texto están bien emparejados.

Se recorre el texto guardando en una pila cada símbolo de apertura. Al encontrar uno de cierre, se saca el último de la pila y se comprueba que sea la pareja correcta. Al terminar, la pila debe estar vacía.

El código de ejemplo prueba con un texto bien formado y otro mal formado.

Las dos comprobaciones son igual de necesarias: si al cerrar el símbolo no coincide, está mal; y si al final queda algo en la pila, hay aperturas sin cerrar. Quedarse solo con la primera deja pasar "(((", y quedarse solo con la segunda deja pasar "(]".

Fíjate en que la solución usa un hash para relacionar cada cierre con su apertura. Sin él harían falta tres condiciones encadenadas, y añadir un cuarto tipo de paréntesis obligaría a tocar la lógica. Con el hash basta con añadir una entrada.

Este es exactamente el mecanismo que usa tu editor para avisarte de un paréntesis sin cerrar, y la primera fase de cualquier analizador de código: comprobar que la estructura cierra antes de intentar entender qué dice.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Ruby directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)