home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / COIN10.ZIP / COIN.PAS < prev   
Encoding:
Pascal/Delphi Source File  |  1992-10-26  |  2.5 KB  |  76 lines

  1. PROGRAM          COINS_PROGRAM;                  (***************************)  
  2.                                                  
  3. Uses Crt;                                        (**     ACS 255           **)
  4. Var                                              (**     Section 1         **)
  5.    P                  : Char;                    (**     Assignment 5      **)
  6.    QuitFlag           : Boolean;                 
  7.    HeadsCount,                                   (***************************)
  8.    TailsCount,                                   
  9.    Ran_Seed           : Integer;
  10.    Number             : Real;
  11.  
  12. (*----------------------------Print Procedure-------------------------------*)
  13. PROCEDURE Print(HeadsCount,TailsCount:Integer);
  14. Begin
  15.       WriteLn;
  16.       WriteLn;
  17.       TextColor(LightBlue);
  18.       WriteLn('Number of Tails Thrown:  ',TailsCount);
  19.       WriteLn('Number of Heads Thrown:  ',HeadsCount);
  20. End;
  21.  
  22. (*----------------------------Flip Coin Procedure---------------------------*)
  23. PROCEDURE FlipCoin(Ran_Seed:Integer);
  24. Var
  25.    Count              : Integer;
  26. Begin
  27.    HeadsCount := 0;
  28.    TailsCount := 0;
  29.    Count := 0;
  30.    Randomize;
  31.    RandSeed := Ran_Seed;
  32.    For Count := 1 to 20 do
  33.       Begin
  34.          Number := Random;
  35.          If Number > 0.5 Then
  36.             HeadsCount := HeadsCount + 1
  37.          Else
  38.             TailsCount := TailsCount +1;
  39.       End;
  40. End;
  41.  
  42. (*--------------------------------------------------------------------------*)
  43. (*                              MAIN PROCEDURE                              *)
  44. (*--------------------------------------------------------------------------*)
  45. Begin
  46.    QuitFlag := False;
  47.    While (QuitFlag = False) Do
  48.       Begin
  49.          Clrscr;
  50.          TextColor(LightGray);
  51.          Write('Enter a Number Between 1 and 100:  ');
  52.          Readln(Ran_Seed);
  53.          If Ran_Seed > 100 then
  54.             Begin
  55.                TextColor(Yellow);
  56.                WriteLn('  Please Choose A Number Less than or equal to 100!');
  57.                Readln;
  58.             End
  59.          Else
  60.             Begin
  61.                FlipCoin(Ran_Seed);
  62.                Print(HeadsCount,TailsCount);
  63.                TextColor(LightGray);
  64.                WriteLn;
  65.                Write('     Please enter Q to quit or <Enter> to continue: ');
  66.                Read(P);
  67.                P := UpCase(P);
  68.                If (P = 'Q') Then
  69.                   QuitFlag := True
  70.                Else
  71.                   QuitFlag := False;
  72.             End
  73.       End;
  74.    ClrScr;
  75. End.
  76.