In diesem Beispiel wird die n-te Fibonacci-Zahl (bis n=35) mit Hilfe einer Schleifen bestimmt.
Die FIbonacci-Zahlen sind wie folgt definiert:
Fib (1) = 1 Fib (2) = 1 Fib (n+2) = Fib (n+1) + Fib (n) bzw. Fib(n)=Fib(n-1)+Fib(n-2)
protected void Button1_Click(object sender, EventArgs e)
{
// n aus der Textbox1 einlesen
int n = int.Parse(TextBox1.Text);
// Sicherheitsabfrage (um Webserver nicht zu stark zu belasten)
if (n <= 35)
{
// fib_n soll Ergebnis speichern
int fib_n = 0;
// fib_n1 speichert vorherige Fibonaccizahl Fib(n-1) und fib_n2 die davor
int fib_n1 = 1;
int fib_n2 = 1;
if (n < 3) // Sonderfall n<3
{
fib_n = 1;
}
else
{
for (int i = 3; i <= n; i++)
{
// die aktuelle Fibonacci-Zahl berechnet sich aus der Summe der
// beiden vorherigen
fib_n = fib_n1 + fib_n2;
// neue Werte für vorherige Fibonaccizahl und die davor speichern
fib_n2 = fib_n1;
fib_n1 = fib_n;
}
}
LabelFib.Text = fib_n.ToString();
}
else
{
LabelFib.Text = "Fehler: n muss zwischen 1 und 35 liegen!";
}
}