Bell 32V development
authorTom London <tbl@research.uucp>
Mon, 27 Nov 1978 03:49:18 +0000 (22:49 -0500)
committerTom London <tbl@research.uucp>
Mon, 27 Nov 1978 03:49:18 +0000 (22:49 -0500)
Work on file usr/src/cmd/random.c

Co-Authored-By: John Reiser <jfr@research.uucp>
Synthesized-from: 32v

usr/src/cmd/random.c [new file with mode: 0644]

diff --git a/usr/src/cmd/random.c b/usr/src/cmd/random.c
new file mode 100644 (file)
index 0000000..042aa81
--- /dev/null
@@ -0,0 +1,30 @@
+#include <stdio.h>
+#define MAXINT 32768.
+float fract = 2,atof();
+char rflag,eflag,c;
+char ibuf[BUFSIZ],obuf[BUFSIZ],line[BUFSIZ];
+main(argc,argv) char **argv;
+{
+       long tvec;
+       int i;
+       for(i=1;i<argc;i++)
+       {       if(*argv[i]!='-')
+                       fract=atof(argv[i]);
+               else if((c=argv[i][1])=='e')
+                       eflag=1;
+               else if(c=='r')
+                       rflag=1;
+       }
+       time(&tvec);
+       srand((int)tvec);
+       if(!rflag && !eflag)
+       {       setbuf(stdin,ibuf);
+               setbuf(stdout,obuf);
+       }
+       for(;eflag==0;)
+       {       gets(line);
+               if(feof(stdin)) break;
+               if(rand()/MAXINT*fract<1) puts(line);
+       }
+       exit((int)(rand()/MAXINT*fract));
+}