text: /* 在BC31下编译 */
  /* compile under Borland C++ 3.1 */
  #include <stdio.h>
  #include <sys\timeb.h>
  #define Alpha 3.90
  
  double initvalue();
  
  double random(void)/*返回一个(0,1)之间的随机数*/
  {
      static double f=-1.0;
      double initvlaue();
      if(f==-1.0) f=initvalue();
      else f=Alpha*f*(1.0-f);
      return f;
  }
  
  double initvalue()/*返回随机数序列初值*/
  {
      double f0;
      struct timeb *pr;
      for(;;){
  		ftime(pr);
  		f0=pr->millitm*0.9876543*0.001;
  		if(f0<0.001) continue;
  		break;
      }
      return f0;
  }
  
  void main()
  {
  	double test;
  	int i;
  	clrscr();
  	puts("This is a random number generator.");
  	puts("\n The random number are: ");
  	for ( i = 0; i < 3; i++ )
  	{
  		test = random();
  		printf ( " >> rand%d:%f\n", i, test );
  	}
  	puts("\n Press any key to quit...");
  	getch();
  }
  