Írjunk programot, amely megjeleníti a Fibonacci-sorozatot az n-edik elemig.
A Fibonacci-számok az egyik legismertebb másodrendben rekurzív sorozat elemei. A nulladik eleme 0, az első eleme 1. A számsor lényege, hogy minden szám az azt megelőző két szám összege, azaz a további elemeket az előző kettő összegeként kapjuk.
A Fibonacci-számok végtelen, növekvő sorozatot alkotnak; ennek első néhány eleme a nulladiktól kezdve 0, 1, 2, 3, 5, 8, 13, 21, 34.
A feladat megoldása
static long fibonacci(long n)
{
if (n < 2) return n;
else
return fibonacci(n - 1) + fibonacci(n - 2);
}
private void Számol_Click(object sender, EventArgs e)
{
long n, elem;
if (textBox1.Text != "")
{
n = Int64.Parse(textBox1.Text);
elem = fibonacci(n);
textBox2.Text = elem.ToString();
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
textBox2.Text = ""; listBox1.Items.Clear();
}
private void Sorozat_Click(object sender, EventArgs e)
{
long n, i, elem;
string s;
listBox1.Items.Clear();
s = " n elem";
listBox1.Items.Add(s);
if (textBox1.Text != "")
{
n = Int64.Parse(textBox1.Text);
for (i = 0; i <= n; i++)
{
elem = fibonacci(i);
s = i.ToString() + " " + elem.ToString();
listBox1.Items.Add(s);
}
}
}
A program futási eredményei: