/***************************************************************************
(c) Copyright 2002 Jeremy Russell., All Rights Reserved.
ITU CSN381, Project 3, 1 http://homepage.mac.com/hteric/Project3.pdf
****************************************************************************
File : myrandom.c
Author : Jeremy Russell
Date : October 16, 20002
Description : Project 3, problem 1,
***************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int randInt ( void );
float randFloat ( void );
/***************************************************************************
Function : main
Author : Jeremy Russell
Date : October 16, 2002
Description : The main() function myrandom.
Arguments : argc, argv
Returns : The function main() returns 1 on fail and 0 on success.
Notes :
See Also :
***************************************************************************/
int main ( int argc, char *argv[] )
{
int i;
// Seed the random number generater with a call to time.
srand(time(NULL));
// Validate the arguments.
if (argc > 2)
{
printf ("Too many arguments specified %d\n", argc - 1);
return 1;
} else {
if (argc < 2)
{
printf ("Must specifiy either '-f' or '-i'.\n");
return 1;
}
}
// Send the random number generated to stdout.
if (argv[1][1] == 'i')
{
printf ("%d\n", randInt());
}
else if (argv[1][1] == 'f')
{
printf ("%.6f\n", randFloat());
}
else
{
printf ("Invalid option.\n");
return 1;
}
return 0;
}
/***************************************************************************
Function : randInt
Author : Jeremy Russell
Date : October 16, 2002
Description : The randInt() funcion returns a randomly generated integer.
Arguments : void
Returns :
Notes :
See Also :
***************************************************************************/
int randInt ( void )
{
return (rand() % 100) + 1;
}
/***************************************************************************
Function : randFloat
Author : Jeremy Russell
Date : October 16, 2002
Description : The randFloat() function returns a randomly generated
floating poitnn number.
Arguments : void
Returns :
Notes :
See Also :
***************************************************************************/
float randFloat ( void )
{
float tmp;
tmp = rand() % 1000000;
tmp /= 1000000;
return tmp;
}