En combinatoria, los números de Catalan forman una secuencia de números naturales que aparece en varios problemas de conteo que habitualmente son recursivos. Obtienen su nombre del matemático belga Eugène Charles Catalan (1814–1894).
El n-ésimo número de Catalan se obtiene, aplicando coeficientes binomiales, a partir de la siguiente fórmula:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace NumerosCatalan_Forms_II
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int numero;
private void button1_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void button2_Click(object sender, EventArgs e)
{
GeneradorNumerosCatalanes generator = new GeneradorNumerosCatalanes();
for (int i = 0; i <= numero; i++)
{
textBox1.Text += "Numero Catalan 1ª Opción: " + " " + (i.ToString() + "-> " + (generator.PrimeraOpcion((i)) + "\r\n"));
textBox1.Text += "Numero Catalan 2ª Opción: " + " " + (i.ToString() + "-> " + (generator.SegundaOpcion((i)) + "\r\n"));
textBox1.Text += "Numero Catalan 3ª Opción: " + " " + (i.ToString() + "-> " + (generator.TerceraOpcionn((i)) + "\r\n"));
}
}
public class GeneradorNumerosCatalanes
{
private static double Factorial(double n)
{
if (n == 0)
return 1;
return n * Factorial(n - 1);
}
public double PrimeraOpcion(double n)
{
const double multiplicador = 2;
return Factorial(multiplicador * n) / (Factorial(n + 1) * Factorial(n));
}
public double SegundaOpcion(double n)
{
if (n == 0)
{
return 1;
}
double sum = 0;
double i = 0;
for (; i <= (n - 1); i++)
{
sum += SegundaOpcion(i) * SegundaOpcion((n - 1) - i);
}
return sum;
}
public double TerceraOpcionn(double n)
{
if (n == 0)
{
return 1;
}
return ((2 * (2 * n - 1)) / (n + 1)) * TerceraOpcionn(n - 1);
}
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
numero = int.Parse(textBox2.Text);
}
}
}
Eugène Charles Catalan (1814–1894). |
En su trabajo original de 1751, Euler definió los números de Catalan Cn como el número de triangulaciones de un polígono de (n+2) lados. Euler calculó a mano los ocho primeros números de Catalan, una labor de chinos, ya que C8=1430... Gracias a ello sugirió la fórmula (correcta).
Para dos letras, ab, hay sólo una forma:
(ab)
Para tres letras, abc, tenemos dos formas:
((ab)c) y (a(bc))
Si tenemos cuatros letras, abcd, se obtienen cinco formas:
((ab)(cd)),(((ab)c)d),(a(b(cd))),(a((bc)d)) y ((a(bc))d)
Obtenemos los números 1,2 y 5. Y si continuáramos obtendríamos 14,42....
Es interesante apuntar que a veces esta sucesión se toma de la siguiente forma:
1,1,2,5,14,42...
Una sorprendente conexión entre estos números de Catalan y el triángulo de Pascal. Sí, exacto, los números de Catalan también están escondidos en este fabuloso triángulo. Y es sencillo encontrarlos.
y nos quedamos con la columna central, esto es, 1,2,6,20,.... Ahora restamos a cada número de esa columna central el número que tiene al lado en el triángulo. Podéis comprobar que así también obtenemos los números de Catalan
Obtenemos los números 1,2 y 5. Y si continuáramos obtendríamos 14,42....
Es interesante apuntar que a veces esta sucesión se toma de la siguiente forma:
1,1,2,5,14,42...
Una sorprendente conexión entre estos números de Catalan y el triángulo de Pascal. Sí, exacto, los números de Catalan también están escondidos en este fabuloso triángulo. Y es sencillo encontrarlos.
y nos quedamos con la columna central, esto es, 1,2,6,20,.... Ahora restamos a cada número de esa columna central el número que tiene al lado en el triángulo. Podéis comprobar que así también obtenemos los números de Catalan
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.