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

सी ++ प्रोग्राम दिए गए वर्षों में विषम दिनों की संख्या की गणना करने के लिए

सकारात्मक पूर्णांक मान n के साथ दिया गया है और कार्य दिए गए वर्ष n तक विषम दिनों की संख्या उत्पन्न करना है।

उदाहरण

Input-: days = 500
Output-: number of odd days are: 5
Input-: days = 400
Output-: number of odd days are: 0

दिए गए वर्षों में विषम दिनों की संख्या की गणना कैसे करें

विषम दिनों की संख्या की गणना करने के लिए सबसे पहले हमें यह जांचना होगा कि दिया गया वर्ष लीप वर्ष है या नहीं, क्योंकि यदि यह लीप वर्ष है तो विषम दिनों की संख्या बदल जाएगी। यदि वर्ष 100 या 400 से विभाज्य है लेकिन 4 से नहीं तो वर्ष लीप वर्ष होगा अन्यथा यह सामान्य वर्ष होगा। यदि हम 7 के साथ दिनों की कुल संख्या का मापांक ज्ञात करें अर्थात सप्ताह में दिनों की संख्या। तो, साधारण वर्ष में 1 विषम दिन होता है और लीप वर्ष में 2 विषम दिन होते हैं।

दिए गए कार्यक्रम में हम जिस दृष्टिकोण का उपयोग कर रहे हैं, वह इस प्रकार है -

  • इनपुट के रूप में दिनों की संख्या दर्ज करें
  • जांचें कि वर्ष लीप वर्ष है या सामान्य दिन
  • दिनों की कुल संख्या को मापांक से भाग देकर विषम दिनों की गणना करें
  • अंतिम परिणाम को वर्ष में 1 से n तक के दिनों की संख्या के रूप में प्रदर्शित करें

एल्गोरिदम

Start
Step 1-> Declare function to calculate number of odd days in a given year
   int cal_odd(int days)
   declare int cal_1 = days / 100
   declare int cal_2 = days / 400
   declare int check_leap = days >> 2
   declare int temp = days - check_leap
   IF (cal_1)
      set temp += cal_1
      Set check_leap -= cal_1
   End
   IF (cal_2)
      Set temp -= cal_2
      Set check_leap += cal_2
   End
   declare int final_days = temp + check_leap * 2
   Declare int odd = final_days % 7
   return odd
step 2->In main()
   Declare int days = 500
   call cal_odd(days)
Stop

उदाहरण

#include <iostream>
using namespace std;
//calculate number of odd days in a given year
int cal_odd(int days) {
    int cal_1 = days / 100;
    int cal_2 = days / 400;
    int check_leap = days >> 2;
    int temp = days - check_leap;
    if (cal_1) {
        temp += cal_1;
        check_leap -= cal_1;
    }
    if (cal_2) {
        temp -= cal_2;
        check_leap += cal_2;
    }
    int final_days = temp + check_leap * 2;
    int odd = final_days % 7;
    return odd;
}
int main() {
    int days = 500;
    cout<<"number of odd days are : "<<cal_odd(days);
    return 0;
}

आउटपुट

number of odd days are : 5

  1. सी/सी++ समय की विषम संख्या होने वाली संख्या ज्ञात करने के लिए कार्यक्रम?

    एक सी ++ प्रोग्राम एक संख्या को खोजने के लिए जो सकारात्मक पूर्णांक के दिए गए सरणी में विषम संख्या में होता है। इस सरणी में, सभी संख्याएँ सम संख्या में बार-बार आती हैं। Input: arr[] = {5, 7, 8, 8, 5, 8, 8, 7, 7} Output: 7 स्पष्टीकरण दो लूप का उपयोग करें जिसमें बाहरी लूप एक-एक करके सभी तत्वों को पार

  1. C++ प्रोग्राम दिए गए ग्राफ़ में ब्रिज किनारों की संख्या का पता लगाने के लिए

    मान लीजिए, हमें एक अभारित, अप्रत्यक्ष ग्राफ दिया गया है जिसमें n कोने और m किनारे हैं। ग्राफ़ में ब्रिज का किनारा वह किनारा होता है जिसके हटाने से ग्राफ़ डिस्कनेक्ट हो जाता है। हमें दिए गए आलेख में ऐसे आलेखों की संख्या ज्ञात करनी है। ग्राफ़ में समानांतर किनारे या सेल्फ़-लूप नहीं होते हैं। इसलिए, यद

  1. C++ प्रोग्राम किसी संख्या की शक्ति की गणना करने के लिए

    किसी संख्या की घात की गणना x^y के रूप में की जा सकती है जहाँ x संख्या है और y इसकी शक्ति है। उदाहरण के लिए। Let’s say, x = 2 and y = 10    x^y =1024    Here, x^y is 2^10 पुनरावर्ती और गैर-पुनरावर्ती कार्यक्रमों का उपयोग करके किसी संख्या की शक्ति की गणना की जा सकती है। इन