Advertisement
apl-mhd

calenderFinla

Aug 28th, 2016
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.70 KB | None | 0 0
  1. #include<stdio.h>
  2. #include <stdlib.h>
  3.  
  4.  
  5. int daysInmonth[]={31,28,31,30,31,30,31,31,30,31,30,31};
  6.  
  7. char *daysNameArray[]={"Sunday","Sat","Monday", "Tuesday", "Wednesday", "thusDat","Friday"};
  8.  
  9.  
  10. void reminderF(char reminder[100]){
  11.  
  12.         printf("\nYou Have a reminder :%s\n\n", reminder);
  13.  
  14.  
  15. }
  16.  
  17. int reminderDay(int day, int month, int year){
  18.  
  19.    int totalDay;
  20.  
  21.  
  22.    month = (month + 9) % 12;
  23.    year = year - month / 10;
  24.  
  25.    totalDay = 365*year + year/4 - year/100 + year/400 + (month*306 +5)/10 + (day-1);
  26.  
  27.    return totalDay;
  28.  
  29. }
  30.  
  31.  
  32. void leapyearCheck(int year){ //cheack leap year or not
  33.  
  34.     if((year % 4 == 0 && year % 100 != 0) || ( year % 400 == 0)){
  35.  
  36.  
  37.            daysInmonth[1] = 29;
  38.     }
  39.  
  40. }
  41.  
  42.  
  43. void printCelender(int year, int month, int userDay){
  44.  
  45.         int firstDayArray[12], firstDay, i, d1, d2, d3, day, daySpace, dayName;
  46.  
  47.         d1 = (year - 1) / 4.0;
  48.         d2 = (year - 1) / 100.0;
  49.         d3 = (year - 1) / 400.0;
  50.  
  51.  
  52.         firstDay = (year + d1 - d2 + d3) % 7;
  53.         firstDayArray[0] = firstDay;
  54.  
  55.         for(i = 1; i<12; i++){
  56.  
  57.                 firstDayArray[i] =(firstDayArray[i-1] + daysInmonth[i-1]) % 7;
  58.  
  59.  
  60.         }
  61.  
  62.  
  63.  
  64.         printf("Sun  Mon  Tue  Wed  Thus  Fri  Sat\n");
  65.  
  66.  
  67.  
  68.             for(daySpace = 1; daySpace <  firstDayArray[month-1] * 5; daySpace++ ){
  69.  
  70.                 printf(" ");
  71.  
  72.  
  73.               }
  74.  
  75.  
  76.  
  77.         for( day = 1; day <= daysInmonth[month-1]; day++){
  78.  
  79.             if(day == userDay)
  80.                 printf(" [%2d] ", day);
  81.  
  82.             else
  83.                 printf(" %2d ", day);
  84.  
  85.  
  86.             if((day + firstDayArray[month-1]) % 7 > 0){
  87.  
  88.                 printf(" ");
  89.  
  90.             }
  91.  
  92.             else{
  93.  
  94.                 printf("\n");
  95.  
  96.             }
  97.  
  98.         }
  99.         printf("\n");
  100.  
  101.         dayName = ( firstDayArray[month-1] + userDay ) % 7;
  102.  
  103.         printf("\n%d-%d-%d is %s \n\n", userDay, month, year, daysNameArray[dayName]);
  104.  
  105. }//end caledner function
  106.  
  107.  
  108.  
  109. int main(){
  110.  
  111.  
  112.     int year, month, userDay, reminDay;
  113.  
  114.     int rDay, rMonth, rYear; //remeinder day month year
  115.  
  116.     char reminder[100];
  117.  
  118.     printf("Please Enter Date Month Year like:  1 1 2016 \n");
  119.     scanf("%d%d%d",&userDay, &month, &year);
  120.  
  121.  
  122.     printf("\nNow Enter Reminder Date, Month, Year \n");
  123.  
  124.     scanf("%d%d%d",&rDay, &rMonth, &rYear);
  125.  
  126.     getchar();
  127.  
  128.  
  129.     printf("\nReminder Text\n");
  130.  
  131.  
  132.  
  133.     gets(reminder);
  134.  
  135.  
  136.  
  137.    reminDay =   reminderDay(rDay, rMonth, rYear) - reminderDay( userDay, month, year) ;
  138.  
  139.  
  140.     leapyearCheck(year);
  141.     printf("\n\n");
  142.  
  143.     printCelender(year, month,userDay);
  144.  
  145.     reminderF(reminder);
  146.  
  147.     printf("\nYou have %d days left\n\n", abs(reminDay));
  148.  
  149.  
  150.  
  151.     return 0;
  152. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement