#include <stdio.h>
#include <time.h>

long atol();

extern char *tzname[];

struct tm *localtime();
long time();

char *days[] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
	"Friday", "Saturday" };
char *months[] = { "January", "February", "March", "April", "May", "June",
	"July", "August", "September", "October", "November", "December" };

main(argc, argv)
int argc;
char *argv[];
{
char ttmp[200];
struct tm *the_time;
long clock = 0;
long ddays = 0;
long tmp = 0;

if (argc != 2)
	{
	 fprintf(stderr,"Usage: dateplus p\n");
	 fprintf(stderr,"       dateplus v\n");
	 fprintf(stderr,"       dateplus <number of days to add to today>\n");
	}
else if ((argc == 2) && (argv[1][0] == 'p') || (argv[1][0] == 'P'))
	{
	 fprintf(stdout,"Enter number of days to be added to today...... ");
	 fgets(ttmp,100,stdin);
	 ddays = atol(ttmp);
	}
else if ((argc == 2) && (argv[1][0] == 'v') || (argv[1][0] == 'V'))
	{
	 fprintf(stdout,"dateplus: Version 1.00 \n");
	 fprintf(stdout,"          Copyright 1987 by Michael Brochstein\n");
	 fprintf(stdout,"          All rights reserved.\n");
	}
else if (argc == 2) 
	{
	 ddays = atol(argv[1]);
	}

if ((argc == 2) && (argv[1][0] != 'v') && (argv[1][0] != 'V'))
	{
	 clock = time((long *)0);
	 the_time = localtime(&clock);

	 fprintf(stdout,"%s %s %2d %4d  plus %ld days is  ", 
		days[the_time->tm_wday], months[the_time->tm_mon], 
		the_time->tm_mday, the_time->tm_year+1900, ddays);

	 tmp = 60 * 60;
	 tmp = tmp * 24;
	 tmp = tmp * ddays;
	 clock = clock + tmp;

	 if ((clock < 0) && (ddays > 0))
		{
		 fprintf(stdout,"unkown to me.\n");
		 fprintf(stdout,"I can not see that far into the future.\n");
		}
	 else
		{
	 	 the_time = localtime(&clock);

	 	 fprintf(stdout,"%s %s %2d %4d.\n", days[the_time->tm_wday],
			months[the_time->tm_mon], the_time->tm_mday, 
			the_time->tm_year+1900);
		}
	}
}
