Thema: Delphi Beginner: Münzwurf

Einzelnen Beitrag anzeigen

Benutzerbild von Kalakmul
Kalakmul

Registriert seit: 11. Apr 2008
27 Beiträge
 
Delphi 2010 Professional
 
#5

AW: Beginner: Münzwurf

  Alt 29. Nov 2016, 22:03
Da eine Münze nur 2 Seiten hat, sollte man vielleicht lieber "Random(2)" nehmen, was zwei Zufallszahlen - nämlich 0 oder 1 - erzeugt.
Die ungeraden - sprich 1 - kann man dann mit "Odd" zählen und in OddCount speichern.
Dann wird die relative Häufigkeit durch "RelHaeuf := OddCount/Anzahl;" berechnet.
Achtung: Die Schleife sollte dann von 1 bis Anzahl laufen, damit die "Münze" wirklich Anzahl-mal geworfen wird.
Zu Beginn sollte man noch "Randomize" einsetzen, damit nicht immer der "gleiche Zufall" abläuft.

Code:
program Muenzwurf;
var
  n, Anzahl,Zufall, oddCount:Int64;
  RelHaeuf: Real;
begin
  Randomize; // initialisiert die "Random seed number" mit der Anzahl der Millisekunden seit Computerstart
  writeln('Muenzwurf');
  writeln('Wie oft soll die Muenze geworfen werden?');
  readln(Anzahl);
  oddCount := 0;
  for n := 1 to Anzahl do
  begin
    Zufall:=random(2);
    If Odd(Zufall) then
    begin
      writeln('Kopf');
      inc(oddCount,1);
    end
    else
      writeln('Zahl');
  end;
  RelHaeuf := oddCount/Anzahl;
  writeln('Relative Häufigkeit: ', RelHaeuf);
  readln();
end.
Wer fragt, ist ein Narr für 5 Minuten, wer nicht fragt, ist ein Narr ein Leben lang.

Geändert von Kalakmul (29. Nov 2016 um 22:09 Uhr)
  Mit Zitat antworten Zitat