C# :: Aufgabe #296 :: Lösung #3

8 Lösungen Lösungen öffentlich
#296

Fibonacci-Folge - Berechnung der ersten 100 Zahlen (mit Schleife oder rekursiver Funktion)

Anfänger - C# von Gnom - 31.03.2020 um 00:35 Uhr
Berechne die ersten 100 Zahlen der Fibonacci-Folge (0, 1, 1, 2, 3, 5, 8, 13, ... vgl.: Fibonacci-Folge (Wikipedia))

Die Fibonacci-Folge beginnt mit den Zahen 0 und 1. Jede weitere Zahl der Folge wird durch Addition der beiden Vorhergehenden gebildet.

0
1
1 (=0+1)
2 (=1+1)
3 (=1+2)
5 (=2+3)
8 (=3+5)
13 (=5+8)
...

Die Aufgabe lässt sich mit einer relativ einfachen Schleife lösen.
Fortgeschrittene können sie auch mit einer rekursiven Funktion lösen.

Viel Erfolg!
#3
vote_ok
von luckyman81 (550 Punkte) - 09.04.2020 um 20:02 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;

namespace FibonacciRecursive
{
    class Program
    {
        static void Main(string[] args)
        {
            ulong start1 = 0;
            ulong start2 = 1;
            List<ulong> fibo = new List<ulong>
            {
                start1,
                start2
            };

            Fibonacci(ref start1, ref start2, fibo, 99);

            int j = 0;
            foreach (ulong f in fibo)
            {
                Console.WriteLine(j++ + ": " + f);
            }
            Console.ReadKey();
        }

        private static void Fibonacci(ref ulong start1, ref ulong start2, List<ulong> fibo, int n)
        {
            if (n < 0)
                return;
            ulong next = start1 + start2;
            fibo.Add(next);
            Fibonacci(ref start2, ref next, fibo, n - 1);
        }
    }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben