Algorithmen mit Wiederholungen
Schachtelung von Wiederholungen
Einführungsbeispiel
Beim Spiel MENSCH-ÄRGERE-DICH-NICHT muss man zu Beginn des Spieles eine 6 würfeln, um die Figur in die Startposition zu bringen. Dazu darf man drei Mal würfeln. Wie groß ist die Wahrscheinlichkeit eine 6 zu würfeln.
Struktogramm

RANDOM, RANDOMIZE
Zur Simulation der Würfelzahl wird die Standardfunktion RANDOM verwendet. RANDOM liefert eine Zufallszahl von 0 bis zu einer GANZZAHL - 1.
Für unser Beispiel: Zufall : = random (6) +1
RANDOMIZE sorgt dafür, dass bei jedem Programmlauf verschiedene Zufallszahlen auftreten.
{Mensch ärgere Dich nicht}
{Das programm ermittelt die Häufigkeit,}
{wie oft die 6 beim dreimaligen Würfeln gewürfelt wird.}
program mensch;
uses crt;
var n, z, i, k, r : integer;
erfolg : boolean;
h : real;
begin
clrscr;
gotoxy(18,3);textcolor(lightred); write('Mensch ärgere Dich nicht');
gotoxy(3,6); textcolor(white);write(' Wie viele Versuche ? ');
readln(n);
randomize;
z := 0;
for i := 1 to n do
begin
Erfolg := false; k:= 0;
repeat
inc(k);
r := random(6) + 1;
Erfolg := ( r = 6);
until Erfolg or (k = 3);
if Erfolg then inc (z);
end;
h := z/n * 100;
gotoxy(12,12); Textcolor(lightgreen);
write('Die relative Häufigkeit ');
gotoxy(12,14);write('die 6 zu würfeln den Spielstart beträgt ', h:2:2,' %');
readln; end.
Den Wert für die Wahrscheinlichkeit, bei drei Versuchen eine 6 zu werfen, beträgt 1-(5 / 6)³ = 42 %