C# :: Aufgabe #258 :: Lösung #2

7 Lösungen Lösungen öffentlich
#258

Stochastische Ermittlung der Eulerschen-Zahl

Anfänger - C# von hollst - 12.04.2019 um 09:37 Uhr
Wir betrachten folgendes Zufallsexperiment: Aus einer Menge reeller und gleichverteilter Zahlen {X} mit 0 <= x < 1.0
ziehen wir solange Zahlen x1, x2 ... xn bis deren Summe >= 1.0 ist. n ist dann das Ergebnis eines Zufallsexperimentes.
Wir müssen mindestens zweimal ziehen, den ein einzelnes Zufalls-x ist ja immer kleiner als 1.0.

Die Frage lautet: Wie groß ist n im Mittel?

Hinweis: Laut Theorie ist n = 2.718281828459045... (= e). Nun gut, grau ist alle Theorie, wir wollen sehen, ob der Computer
(in etwa) der gleichen Meinung ist.

Viel Spaß!
#2
vote_ok
von hollst (13980 Punkte) - 17.05.2019 um 12:43 Uhr
Quellcode ausblenden C#-Code
using System;
using static System.Console;

namespace aufgabe_258
{
    class Program
    {
        static void Main()
        {
            Random random = new Random();
            UInt32 nmax = (UInt32)1E+9;
            UInt32 glob_counter = 0;
            for (UInt32 n = 0; n < nmax; n++)
            {
                Double temp = 0.0;
                UInt32 counter = 0;
                while(temp < 1.0)
                {
                    temp += random.NextDouble();
                    counter++;
                };
                glob_counter += counter;
            }
            WriteLine($"exact:  {Math.E}");
            WriteLine($"approx: {1.0 * glob_counter / nmax}");
            ReadKey();
        }
    }
}

Kommentare:

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

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