Programming 251
The program
DiceSimulation
START()
BEGIN
DICESIMVARS();
// Empty data columns D1 and D2
{}
D1;
{}
D2;
SETSAMPLE(H1,D1);
SETFREQ(H1,D2);
0
H1Type;
END;
VIEWS “Roll Dice”,ROLLMANY()
BEGIN
LOCAL k,roll;
MAKELIST(X+1,X,1,2*SIDES-1,1)
D1;
MAKELIST(0,X,1,2*SIDES-1,1)
D2;
FOR k FROM 1 TO ROLLS DO
Roll:=ROLLDIE(SIDES)+ROLLDIES(SIDES);
D2(roll-1)+1
D2(roll-1);
END;
-1
Xmin;
MAX(D1)+1
Xmax;
0
Ymin;
MAX(D2)+1
Ymax;
STARTVIEW(1,1);
END;
VIEWS "Set Sides", SETSIDES()
BEGIN
REPEAT
INPUT(SIDES,"Die Sides","N = ","Enter num
sides",2);
FLOOR(SIDES)
SIDES;