C# :: Aufgabe #28 :: Lösung #8

12 Lösungen Lösungen öffentlich
#28

Ausgabe der Fibonacci-Folge

Anfänger - C# von Dome - 29.12.2012 um 00:58 Uhr
Schreiben Sie ein Programm, welches die Fibonacci-Folge ausgibt. Zuvor wird abgefragt, wie viele Werte ausgegeben sollen.

Hilfe von Wiki: Fibonacci-Folge

Konsolenausgabe:

Ausgabe der Fibonacci-Folge mit 10 Werten : 0,1,1,2,3,5,8,13,21,34
#8
vote_ok
von niknik (1230 Punkte) - 07.08.2015 um 12:45 Uhr
Kleine Fehlerbehandlung, falls der User zu viele Zahlen will.
Selbst long Variablen sind irgendwann zu klein.

Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication17
{
    class Program
    {

        public static void fib(int n)
        {
            long[] fibbo = new long[n + 1];

            if (n == 0) return;

            fibbo[0] = 1;

            if (n == 1)
            {
                Console.WriteLine("Die Fibbonacci-Folge bis zur {0}. Zahl", n);
                Console.WriteLine();
                Console.WriteLine(fibbo[0]);
                return;
            }

            fibbo[1] = 1;
            
            Console.WriteLine("Die Fibbonacci-Folge bis zur {0}. Zahl", n);
            Console.WriteLine();
            Console.WriteLine(fibbo[0] + "\n" + fibbo[1]);
            for (int i = 2; i < fibbo.Length-1; i++)
            {
                fibbo[i] = fibbo[i - 1] + fibbo[i - 2];
                if (fibbo[i] < 0)
                {
                    Console.WriteLine("Mehr Werte können nicht angezeigt werden. Die Zahlen werden zu groß.");
                    return;
                }
                Console.WriteLine(i + 1 + ".:   " + fibbo[i]);
            }

        }

        static void Main(string[] args)
        {
            int number;
            do
            {
                Console.WriteLine("Wieviele Zahlen der Fibbonacci-Folge berechnen? Maximum: 92");
            } while (!int.TryParse(Console.ReadLine(), out number) || number < 0);
            fib(number);
            Console.ReadLine();
        }
    }
}

Kommentare:

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

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