Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में दिए गए वर्ष के लिए कैलेंडर प्रिंट करें


इस समस्या में, हमें एक वर्ष दिया गया है और हम उस वर्ष के लिए कैलेंडर प्रिंट करना चाहते हैं।

वर्ष कैलेंडर महीने की हर तारीख पर सभी दिन, महीने दिखाता है। और यहां हम एक प्रोग्राम बनाएंगे जो वर्तमान वर्ष का कैलेंडर लौटाएगा।

इसके लिए, हमें कुछ गणनाओं की आवश्यकता होगी जैसे,

किसी विशिष्ट महीने में दिनों की संख्या

जनवरी, मार्च, मई, जुलाई, अगस्त, अक्टूबर, दिसंबर में 31 दिन होते हैं।

फरवरी में गैर-लीप वर्ष में 28 दिन और लीप वर्ष में 29 दिन होते हैं।

अप्रैल, जून, सितंबर, नवंबर में 30 दिन होते हैं।

महीने पर प्रारंभ दिन (सप्ताह का दिन)

वर्ष और महीने के आधार पर, हर महीने की 1 तारीख के लिए सप्ताह का दिन पाया जाता है।

उदाहरण

अब, आइए 2020 का कैलेंडर प्रिंट करने के लिए एक प्रोग्राम बनाते हैं -

#include<iostream> using namespace std; int dayNumber(int day, int month, int year){     static int t[] = { 0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4 };     year -= month < 3;     return ( year + year/4 - year/100 + year/400 + t[month-1] + day) % 7; } string getMonthName(int monthNumber){     string months[] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};     return (months[monthNumber]); } int numberOfDays (int monthNumber, int year){     switch(monthNumber){         case 0 :         case 2 :         case 4 :         case 6 :         case 7 :         case 9 :         case 11: return(31);         break;         case 1 :             if (year % 400 == 0 || (year % 4 == 0 && year %100 != 0))                 return (29);             else                 return (28);             break;         case 3 :         case 5 :         case 8 :         case 10 : return(30);             break;     } } void printCalendar(int year){     cout<<"\t\t\t Calendar - Year "<<year;     int days;     int current = dayNumber (1, 1, year);     for (int i = 0; i < 12; i++){         days = numberOfDays (i, year);         cout<<endl<<"\t\t ----X----"<<getMonthName (i).c_str()<<"----X---- \t\t"<<endl;         cout<<" Sun Mon Tue Wed Thu Fri Sat \n";         int k;         for (k = 0; k < current; k++)             cout<<"\t";         for (int j = 1; j <= days; j++){             printf("%5d", j);             if (++k > 6){                 k = 0;                 cout<<endl;             }         }         if (k)             cout<<endl;             current = k;     }     return; } int main(){     int year = 2019;     printCalendar(year);     return (0); }

आउटपुट

Calendar - Year 2019 ----X----January----X---- Sun Mon Tue Wed Thu Fri Sat     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 ----X----February----X---- Sun Mon Tue Wed Thu Fri Sat       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 ----X----March----X---- Sun Mon Tue Wed Thu Fri Sat       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 ----X----April----X---- Sun Mon Tue Wed Thu Fri Sat 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 ----X----May----X---- Sun Mon Tue Wed Thu Fri Sat       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 ----X----June----X---- Sun Mon Tue Wed Thu Fri Sat          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 ----X----July----X---- Sun Mon Tue Wed Thu Fri Sat 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 ----X----August----X---- Sun Mon Tue Wed Thu Fri Sat        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 ----X----September----X---- Sun Mon Tue Wed Thu Fri Sat 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 ----X----October----X---- Sun Mon Tue Wed Thu Fri Sat     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 ----X----November----X---- Sun Mon Tue Wed Thu Fri Sat          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 ----X----December----X---- Sun Mon Tue Wed Thu Fri Sat 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

  1. C++ में दिए गए स्रोत से गंतव्य तक सभी पथ प्रिंट करें C++ में दिए गए स्रोत से गंतव्य तक सभी पथ प्रिंट करें

    इस समस्या में हमें एक निर्देशित ग्राफ दिया गया है और हमें ग्राफ के स्रोत से गंतव्य तक सभी पथ प्रिंट करने हैं। निर्देशित ग्राफ एक ग्राफ है जिसमें किनारे शीर्ष a से b की ओर निर्देशित होते हैं। समस्या को समझने के लिए एक उदाहरण लेते हैं स्रोत = K गंतव्य = P आउटपुट: P यहां, हमने K से P तक के पथ ढूंढे

  1. C++ में डिस्कनेक्टेड ग्राफ के लिए BFS C++ में डिस्कनेक्टेड ग्राफ के लिए BFS

    डिस्कनेक्टेड ग्राफ एक ग्राफ है जिसमें एक या अधिक नोड्स ग्राफ के एंडपॉइंट्स नहीं होते यानी वे कनेक्टेड नहीं होते। एक डिस्कनेक्टेड ग्राफ... अब, सिंपल BFS केवल तब लागू होता है जब ग्राफ कनेक्टेड हो यानी ग्राफ के सभी वर्टेक्स ग्राफ के एक नोड से एक्सेसिबल हों। उपरोक्त डिस्कनेक्टेड ग्राफ में तकनीक संभव नह

  1. - Python में दिए गए महीने और वर्ष के लिए कैलेंडर कैसे प्रिंट करें?

    आप दिए गए वर्ष के दिए गए महीने के लिए Python में कैलेंडर प्राप्त करने के लिए कैलेंडर मॉड्यूल का उपयोग कर सकते हैं। आपको आर्गुमेंट्स के रूप में वर्ष और महीना प्रदान करने की आवश्यकता है। उदाहरण import calendar y = 2017 m = 11 print(calendar.month(y, m)) आउटपुट यह आउटपुट देगा: November 2017 Mo Tu We