SOURCE FILE: makeRandArray.cpp


/* 

This program creates an array of integers like

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

and then "shuffles" it (pseudo) randomly and prints out the result. 

*/

#include <iostream.h>
#include <stdlib.h>
#include <sched.h>
#include <time.h>

extern long random(void);

const int SIZE = 32 ;

/* ################################################## */
/*                         init                       */
/* ################################################## */
void init() 
{ 

       /* initialize random number generator */ 
  srandom(time((time_t *) 0));

}

/* ################################################## */
/*                         Swap                       */
/* ################################################## */
void swap(int& x, int& y) 
{ 
   int temp ;
   temp=x; x=y; y=temp ;
}

/* ################################################## */
/*                         main                       */
/* ################################################## */

int main() 
{ 
  init(); 

  int array[SIZE], k ;
  for (k=0; k<SIZE; k++) array[k]=k;
  
  int i, j;

  cout << endl ;
  for (i = 0; i <SIZE; i++) 
  {  
     j= random()%SIZE ;
     swap(array[i], array[j]) ;
  }
  for (i = 0; i <SIZE; i++) 
  {  
     cout << array[i] << " " ;
  }
  cout << endl ;

  return 0 ;
}