Skip to main content

Calender Program in C Programming Language Display Day of the month


1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include<stdio.h>

int fm(int date, int month,int year)
{
    int fmonth,leap;
    ///leap function... 1 for leap & 0 for non-leap
    if((year%100==0) && (year%400!=0))
        leap=0;
    else if(year%4==0)
        leap=1;
    else
        leap=0;

    fmonth=3+(2-leap)*((month+2)/(2*month))+(5*month+month/9)/2;
    ///f(m) formula
    fmonth = fmonth %7; ///bring it in range of 0 to 6
    return fmonth;
}

int day_of_week(int date, int month, int year)
{
    int dow; //day of week

    int YY = year % 100;
    int century = year / 100;

    printf("\nDate: %d/%d/%d\n\n",date,month,year);

    dow = 1.25 *  YY + fm(date,month,year) + date - 2*( century % 4); ///function of weekday for Gregorian
    dow = dow % 7; ///remainder on division by 7

    switch (dow)
        {
        case 0:
            printf("weekday = Saturday");
            break;
        case 1:
            printf("weekday = Sunday");
            break;
        case 2:
            printf("weekday = Monday");
            break;
        case 3:
            printf("weekday = Tuesday");
            break;
        case 4:
            printf("weekday = Wednesday");
            break;
        case 5:
            printf("weekday = Thursday");
            break;
        case 6:
            printf("weekday = Friday");
            break;
        default:
            printf("Incorrect data");
        }
    return 0;
}

int main()
{
    int date,month,year;

    printf("Enter the day ");
    scanf("%d",&date);

    printf("Enter the month ");
    scanf("%d",&month);

    printf("Enter the year ");
    scanf("%d",&year);

    if(date<=0||date>31||month<=0||month>12)
        {
            printf("\nINVALID INPUT\n.......TRY AGAIN.....\n\n");
            return main();
        }
    else
        day_of_week(date,month,year);
    getch();
}

Comments

Popular posts from this blog

[Python] *args vs **Kwargs

পাইথনে ফাংশন আর্গুমেন্ট *args ও **kwargs আমরা মাঝে মাঝেই পাইথনের ফাংশনের প্যারামিটার হিসাবে *args, ** kwargs কে দেখতে পাই । তো এগুলো আসলে কি ? এবং এগুলো কিভাবে কাজ করে ? এই দুইটা বুঝতে হলে প্রথমে আমাদের আর্গুমেন্ট কি সেটা বুঝতে হবে । আর্গুমেন্ট কোন ফাংশন কল করার সময় আমার ফাংশনে যে ভেলু pass করি করি সেটা কে বলা হয় আর্গুমেন্ট । পাইথনে দুই ধরনের আর্গুমেন্ট আছে, Keyword Argument. Positional Argument. Keyword Argument যে সকল আর্গুমেন্টের সাথে তার আইডেন্টিফায়ার থাকে সেসব আর্গুমেন্ট কে keyword argument বলে । উদাহরণ দিলে পরিষ্কার হয়ে যাবে। মনে করেন আমাদের এইরকম একটা ফাংশন আছে, উপরে আমরা ৪ নং লাইনে ফাংশন কল করার সময় যে দুইটা আর্গুমেন্ট pass করলাম সেটাকে বলা হয় keyword argument. এখানে name = 'Arif' এ name এবং age = 24 এর age আর্গুমেন্ট দুইটির আইডেন্টিফায়ার । কারণ name, age দিয়ে আমরা আলাদা ভাবে দুইটা আর্গুমেন্টকে আইডেন্টিফাই করতে পারছি । Positional Argument যে আর্গুমেন্ট গুলো keyword argument না সেগুলো কে positional argument বলে । এই ধরনের আর্গুমেন্টের কোন আইডেন্টি...