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
2296998

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.