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

ज़ेलर के एल्गोरिदम का उपयोग करके सप्ताहांत खोजें


Zeller's Algorithm का उपयोग किसी निश्चित तिथि से कार्यदिवस खोजने के लिए किया जाता है। ज़ेलर एल्गोरिथम का उपयोग करके कार्यदिवस खोजने का सूत्र यहाँ है:

ज़ेलर के एल्गोरिदम का उपयोग करके सप्ताहांत खोजें

सूत्र में कुछ चर हैं; वे हैं -

d - तारीख का दिन।

एम:यह महीने का कोड है। मार्च से दिसंबर तक यह 3 से 12 है, जनवरी के लिए यह 13 है, और फरवरी के लिए यह 14 है। जब हम जनवरी या फरवरी पर विचार करते हैं, तो दिए गए वर्ष में 1 की कमी होगी।

y - वर्ष के अंतिम दो अंक

c - साल के पहले दो अंक

डब्ल्यू - कार्यदिवस। जब यह 0 होता है, यह शनिवार होता है, जब यह 6 होता है, इसका अर्थ शुक्रवार होता है

इनपुट और आउटपुट

Input:
The day, month and the year: 4, 1, 1997
Output:
It was: Saturday

एल्गोरिदम

zellersAlgorithm(day, month, year)

इनपुट: दिन की तारीख।

आउटपुट: कौन सा दिन था, (रविवार से शनिवार)।

Begin
   if month > 2, then
      mon := month
   else
      mon := 12 + month
      decrease year by 1
   y := last two digit of the year
   c := first two digit of the year
   w := day + floor((13*(mon+1))/5) + y + floor(y/4) + floor(c/4) + 5*c
   w := w mod 7
   return weekday[w] //weekday will hold days from Saturday to Friday
End

उदाहरण

#include<iostream>
#include<cmath>
using namespace std;

string weekday[7] = {"Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday"};
                               
string zellersAlgorithm(int day, int month, int year) {
   int mon;
   if(month > 2)
      mon = month;    //for march to december month code is same as month
   else {
      mon = (12+month);    //for Jan and Feb, month code will be 13 and 14
      year--; //decrease year for month Jan and Feb
   }
         
   int y = year % 100;    //last two digit
   int c = year / 100;    //first two digit
   int w = (day + floor((13*(mon+1))/5) + y + floor(y/4) + floor(c/4) + (5*c));
   w = w % 7;
   return weekday[w];
}

int main() {
   int day, month, year;
   cout << "Enter Day: "; cin >>day;
   cout << "Enter Month: "; cin >>month;
   cout << "Enter Year: "; cin >>year;
   cout << "It was: " <<zellersAlgorithm(day, month, year);
}

आउटपुट

Enter Day: 04
Enter Month: 01
Enter Year: 1997
It was: Saturday

  1. वर्ष एपीआई कक्षा का उपयोग करके एंड्रॉइड में लीप वर्ष कैसे खोजें या नहीं?

    यह उदाहरण दर्शाता है कि वर्ष एपीआई वर्ग का उपयोग करके एंड्रॉइड में लीप वर्ष कैसे खोजें या नहीं। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।

  1. सी ग्राफिक्स का उपयोग करके बाढ़ भरण एल्गोरिदम

    अवधारणा किसी दिए गए आयत के संबंध में, हमारा कार्य बाढ़ भरण एल्गोरिथम लागू करके इस आयत को भरना है। इनपुट rectangle(left = 50, top = 50, right= 100, bottom = 100) floodFill( a = 55, b = 55, NewColor = 12, OldColor = 0) आउटपुट विधि // पिछले रंग OldColor को (a, b) पर और (a, b) के आसपास के सभी पि

  1. पायथन में प्राइम एल्गोरिथ्म का उपयोग करके एमएसटी का पता लगाने का कार्यक्रम

    मान लीजिए हमें एक ग्राफ दिया गया है और उस ग्राफ से न्यूनतम स्पैनिंग ट्री (एमएसटी) का पता लगाने के लिए कहा गया है। ग्राफ़ का MST भारित ग्राफ़ का एक उपसमुच्चय होता है जहाँ सभी शीर्ष मौजूद होते हैं और जुड़े होते हैं, और उपसमुच्चय में कोई चक्र मौजूद नहीं होता है। एमएसटी को न्यूनतम कहा जाता है क्योंकि एम