Rutas
/
Tcl
Tcl
/
Ejercicios
/
Triángulo de Pascal
Triángulo de Pascal

Triángulo de Pascal

Media

Introducción

Como hace un día espléndido, no te apetece nada pasar una hora en un aula. De mal humor, entras en clase y te fijas en una forma triangular extrañamente satisfactoria en la pizarra. Mientras esperas a que llegue tu profesor de matemáticas, no puedes evitar fijarte en algunos patrones del triángulo: los valores exteriores son todos unos, cada fila tiene un valor más que la anterior y el triángulo es simétrico. ¡Qué raro!

No mucho después de que te sientes, entra tu profesor y explica que ese triángulo es el famoso triángulo de Pascal.

Durante la hora siguiente, tu profesor te desvela algunas cosas asombrosas que se esconden en este triángulo:

  • Sirve para calcular de cuántas formas puedes elegir K elementos de entre N valores.
  • Contiene la sucesión de Fibonacci.
  • Si coloreas los números pares e impares de forma distinta, obtienes un bonito patrón llamado triángulo de Sierpiński.

El profesor te pide a ti y a tus compañeros que busquéis otros usos, ¡y os asegura que hay muchísimos más! En ese momento suena el timbre del colegio. Te das cuenta de que durante la última hora has estado completamente absorto aprendiendo sobre el triángulo de Pascal. Coges rápidamente el portátil de la mochila y sales fuera, dispuesto a disfrutar tanto del sol como de las maravillas del triángulo de Pascal.

Instrucciones

Tu tarea es generar las primeras N filas del triángulo de Pascal.

El triángulo de Pascal es un array triangular de números enteros positivos.

En el triángulo de Pascal, el número de valores de una fila es igual al número de esa fila (que empieza en uno). Por lo tanto, la primera fila tiene un valor, la segunda fila tiene dos valores, y así sucesivamente.

La primera fila (la más alta) tiene un único valor: 1. Los valores de las filas siguientes se calculan sumando los números que están directamente a la derecha y a la izquierda de la posición actual en la fila anterior.

Si la fila anterior no tiene un valor a la izquierda o a la derecha de la posición actual (lo que solo ocurre en las posiciones más a la izquierda y más a la derecha), trata el valor de esa posición como cero (lo que equivale a «ignorarlo» en la suma).

Ejemplo

Vamos a ver las primeras 5 filas del triángulo de Pascal:

    1
   1 1
  1 2 1
 1 3 3 1
1 4 6 4 1

La fila más alta tiene un valor, que es 1.

Los valores más a la izquierda y más a la derecha solo tienen una posición precedente que considerar, que es la posición a su derecha y a su izquierda, respectivamente. Como el valor más alto es 1, se deduce que todos los valores más a la izquierda y más a la derecha también son 1.

Los demás valores tienen dos posiciones que considerar. Por ejemplo, el valor central de la quinta fila (1 4 6 4 1) es 6, ya que los valores a su izquierda y a su derecha en la fila anterior son 3 y 3:

Editar en GitHub El enlace se abre en una ventana o pestaña nueva
Tcl Exercism

¿Listo para empezar Triángulo de Pascal?

Regístrate en Exercism para aprender y dominar Tcl con 135 ejercicios y mentoría humana real, todo gratis.