| "screen.h"
header file Functions
 Using this header file eliminated the need to include these function 
definitions into your code each time you wished to use these concepts.  It was particularly useful 
for beginning programmers who were unfamiliar with the use of functions.
 Now, however, you may be ready to delve into the "workings" of these 
functions and you may wish to include the function definitions in your code.
 
 
  
    
      |           | Pause (delay) screen output: delay(5000);
 Note:  The argument (the value sent to
        this function) is time in milliseconds. (5000 = 
		about 5 seconds).  Unlike the system("PAUSE");, 
		no message is displayed on the screen.    If you wish to delay the screen after a
         cout statement, you will need to  "flush" the
        iostream.
 (Using the function definition requires header file 
		<time.h>)
 |  
      |  | // 
		------------------------------------------------------------------------------- // delay( ) -- Allow the screen to be "paused" for the
 // number of seconds determined by the programmer. Unlike
 // the system("PAUSE");, no message is displayed on the
 // screen. (5000 = 5 seconds, approximately)
 // Requires header file <time.h>
 // 
		--------------------------------------------------------------------------------
 // Function for delay( )
 void delay(long seconds)
 {
 clock_t time1 = clock(); // use 
		clock time
 clock_t time2 = time1 + seconds;
 while(time1 < time2)
 time1 = clock();
 return;
 }
 //Read more about "clock time" 
		under 
		
		CS2 Library Functions.
 
 |  
 
  
    
      |           | Move the cursor around the screen: gotoxy(x,y);
 Note:  Move the cursor on the screen to any coordinates (x,y).  
		As in mathematics, x  is the horizontal coordinate and  y  is the vertical coordinate.  
		Remember that the screen is 80 wide and 22 high and the point (1,1) will 
		be the upper left corner.  You will need to "flush" the iostream between successive uses of
        gotoxy( , ).
 |  
      |  | // 
		-------------------------------------------------------------------------- // gotoxy( , ) -- Move the cursor to any location on the
 // screen. The upper left corner of the screen will be set
 // to the coordinates (1,1) for easier counting of spaces.
 // Requires headers <windows.h>
 // 
		--------------------------------------------------------------------------
 // Function for gotoxy( , )
 void gotoxy(int x, int y)
 {
 // 
		get the console handle
 HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
 COORD point;
 point.X = x-1;    // 
		set the new cursor location coordinates
 point.Y = y-1;
 SetConsoleCursorPosition(hConsole, point);
 return;
 }
 /*A console process uses handles to 
		access the input and screen buffers of its console and you need to know 
		which one is in use.*/
 
 |  
 
  
    
      |           | Get keyboard response -  response not visible getch( );
 Note:  getch( ) waits for the user to 
		press a key, returns this response, and moves on.  It will NOT show 
		the response on the screen (no echo).  You will not see what was typed. 
        It does NOT wait for the user to press the ENTER key.
 |  
      |  | // 
		-------------------------------------------------------------------- // getch( ) -- Waits for user to hit a key, returns
 // this response, and goes on. You will not see the
 // user's response on the screen (no echo).
 // Requires headers <windows.h> and <conio.h>
 // --------------------------------------------------------------------
 // Function for getch( )
 int getch(void)
 {
 int response;
 cout << flush;
 response = _getch();
 HANDLE hConsole = GetStdHandle(STD_INPUT_HANDLE);
 FlushConsoleInputBuffer(hConsole);
 return response;
 }
 
 
 |    
  
    
      |           | Get keyboard response -  response visible getche( );
 Note: getche( ) waits for the user to press 
		a key, returns this response, and moves on.  It WILL show the 
		response on the screen (echo).  You will see what was typed. 
        It does NOT wait for the user to press the ENTER key.
 |  
      |  | // 
		------------------------------------------------------------------------------ // getche( ) -- Waits for user to hit a key, returns
 // this response, and goes on. You will see the user's
 // response on the screen (echo).
 // Requires headers <windows.h> and <conio.h>
 // 
		-----------------------------------------------------------------------------
 // Function for getche( )
 int getche(void)
 {
 int response;
 response = _getche();
 HANDLE hConsole = GetStdHandle(STD_INPUT_HANDLE);
 FlushConsoleInputBuffer(hConsole);
 return response;
 }
 
 |  |