which included commits to RCS files with non-trunk default branches. git-svn-id: svn://10.65.10.50/trunk@976 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			90 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| /***********************************************************************\
 | |
|  *                                                                       *
 | |
|  *   DATE.C    Copyright (C) 1993 Sequiter Software Inc.             *
 | |
|  *                                                                       *
 | |
|  \***********************************************************************/
 | |
| /* See User's Manual, page 154 */
 | |
| 
 | |
| #include "d4all.h"
 | |
| 
 | |
| #ifdef __TURBOC__
 | |
| extern unsigned _stklen = 10000;
 | |
| #endif
 | |
| 
 | |
| int  valid_date(char *date)
 | |
| {
 | |
|   long rc;
 | |
|   rc = date4long(date);
 | |
| 
 | |
|   if(rc < 1)
 | |
|     return 0;
 | |
|   else
 | |
|     return 1;
 | |
| }
 | |
| 
 | |
| void how_long_until(int month,int day,char *title)
 | |
| {
 | |
|   char today_standard[9],today[25],date[9],*dow;
 | |
|   int  year,days;
 | |
|   long julian_today,julian_date;
 | |
| 
 | |
|   memset(today_standard,NULL
 | |
|          ,sizeof(today_standard));
 | |
|   memset(today,NULL,sizeof(today));
 | |
|   memset(date,NULL,sizeof(date));
 | |
| 
 | |
|   date4today(today_standard);
 | |
|   date4format(today_standard,today
 | |
|               ,"MMM DD/CCYY");
 | |
| 
 | |
|   printf("\nToday's date is %s\n",today);
 | |
| 
 | |
| 
 | |
|   julian_today = date4long(today_standard);
 | |
| 
 | |
|   year = date4year(today_standard);
 | |
|   sprintf(date,"%4d%2d%2d",year,month,day);
 | |
| 
 | |
|   julian_date = date4long(date);
 | |
| 
 | |
|   if(julian_date < julian_today)
 | |
|   {
 | |
|     year ++;
 | |
|     sprintf(date,"%4d%2d%2d",year,month,day);
 | |
| 
 | |
|     julian_date = date4long(date);
 | |
|   }
 | |
| 
 | |
| 
 | |
|   days = julian_date - julian_today;
 | |
| 
 | |
|   printf("There are %d days until %s"
 | |
|          ,days,title);
 | |
|   dow = date4cdow(date);
 | |
| 
 | |
|   printf("(which is a %s this year)\n",dow);
 | |
| 
 | |
| }
 | |
| 
 | |
| 
 | |
| void main()
 | |
| {
 | |
|   char birthdate[80],standard[9];
 | |
| 
 | |
| 
 | |
|   how_long_until(12,25,"Christmas");
 | |
| 
 | |
|   do
 | |
|   {
 | |
|     printf("\nPlease enter your birthdate");
 | |
|     printf(" in \"DEC 20/1993\" format:");
 | |
|     gets(birthdate);
 | |
|     date4init(standard,birthdate,"MMM DD/CCYY");
 | |
| 
 | |
|   }while(!valid_date(standard));
 | |
| 
 | |
|   how_long_until(date4month(standard)
 | |
|                  ,date4day(standard)
 | |
|                  ,"your next birthday");
 | |
| }
 |