home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume6 / gbcount2 < prev    next >
Internet Message Format  |  1989-02-03  |  3KB

  1. Path: xanth!nic.MR.NET!csd4.milw.wisc.edu!leah!itsgw!steinmetz!uunet!allbery
  2. From: allbery@uunet.UU.NET (Brandon S. Allbery - comp.sources.misc)
  3. Newsgroups: comp.sources.misc
  4. Subject: v06i027: Bush in '92 countdown program
  5. Message-ID: <47760@uunet.UU.NET>
  6. Date: 29 Jan 89 21:21:51 GMT
  7. Sender: allbery@uunet.UU.NET
  8. Reply-To: kscott@cca.ucsf.EDU (Kevin Scott)
  9. Lines: 86
  10. Approved: allbery@uunet.UU.NET (Brandon S. Allbery - comp.sources.misc)
  11. X-Arch-Keywords: portable, c, politics, fun
  12.  
  13. Posting-number: Volume 6, Issue 27
  14. Submitted-by: kscott@cca.ucsf.EDU (Kevin Scott)
  15. Archive-name: gbcount2
  16.  
  17. [This silly politics stuff is making me violently sick.  ++bsa]
  18.  
  19. #! /bin/sh
  20. # This file was wrapped with "dummyshar".  "sh" this file to extract.
  21. # Contents:  gbcount.c
  22. echo extracting 'gbcount.c'
  23. if test -f 'gbcount.c' -a -z "$1"; then echo Not overwriting 'gbcount.c'; else
  24. sed 's/^X//' << \EOF > 'gbcount.c'
  25. X/*
  26. X * gbcount.c: George Bush Countdown program
  27. X * Paul Heckbert, ph@degas.berkeley.edu        9 Mar 1988
  28. X * Kevin Scott, kscott@cca.ucsf.edu        20 Jan 1989
  29. X */
  30. X
  31. X#define BSD                /* use BSD rng */
  32. X/*#define USG                /* use USG rng; otherwise V7 */
  33. X
  34. X#include <stdio.h>
  35. X#define SEC_PER_DAY (24*3600)
  36. X#define BUSH_TIMEOUT 727300800    /* inauguration day
  37. X                    noon, 20 Jan 1993: time to rejoice! 
  38. X                    (anticipating one term) */
  39. X
  40. Xstatic char *wimpname[] = {
  41. X    "The French Connection",
  42. X    "George Bush",
  43. X    "Mister Skull and Bones",
  44. X    "The Quayle Hunter",
  45. X    "Noriega's blackmailee",
  46. X    "Dan Quayle jokes",
  47. X    "BU--SH--",
  48. X    "a kindler, gentler aristocracy",
  49. X    "1000 points of light",
  50. X    "Son of the Gipper",
  51. X    "the Wimp",
  52. X};
  53. X#define WIMPNUM (sizeof wimpname/sizeof wimpname[0])
  54. X
  55. Xdouble frandom();
  56. X
  57. Xmain(argc, argv)
  58. Xint argc;
  59. Xchar *argv[];
  60. X{
  61. X    long t;
  62. X    int i;
  63. X
  64. X    t = time(0);
  65. X    srandom(t);
  66. X    for (i=0; i<30; i++) random();
  67. X    if (argc == 1) t = BUSH_TIMEOUT-t;
  68. X    else if (*(argv[1]+1) == 'p') t = BUSH_TIMEOUT -t -10800;
  69. X    else if (*(argv[1]+1) == 'm') t = BUSH_TIMEOUT -t -7200;
  70. X    else if (*(argv[1]+1) == 'c') t = BUSH_TIMEOUT -t -3600;
  71. X    else if (*(argv[1]+1) == 'e') t = BUSH_TIMEOUT -t;
  72. X    else printf("By Eastern Standard Time there are ");
  73. X    printf("%d more days of %s\n", t/SEC_PER_DAY,
  74. X    wimpname[(int)(WIMPNUM*frandom())] );
  75. X}
  76. X
  77. Xdouble frandom()        /* random number between 0 and 1 */
  78. X{
  79. X#ifdef BSD
  80. X    return random()/2147483647.;
  81. X#endif
  82. X#ifdef SYSV
  83. X    extern double drand48();
  84. X
  85. X    srand48(time(0) + getpid());
  86. X    return drand48();
  87. X#endif
  88. X#if !(defined(BSD) || defined(SYSV))
  89. X    srand((unsigned) time((long *) 0) + getpid());
  90. X    return rand() / ((double) (2 << 15) - 1);
  91. X#endif
  92. X}
  93. X
  94. EOF
  95. chars=`wc -c < 'gbcount.c'`
  96. if test $chars !=     1779; then echo 'gbcount.c' is $chars characters, should be     1779 characters!; fi
  97. fi
  98. exit 0
  99.