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

C++ में संख्या d जोड़ने के बाद न्यूनतम संभव अंकों का योग ज्ञात कीजिए

इस समस्या में, हमें दो संख्याएँ n और d दी गई हैं। हमारा कार्य संख्या d जोड़ने के बाद न्यूनतम संभव अंकों का योग ज्ञात करना है।

समस्या का विवरण - हमें n में d का kवां गुणज जोड़कर अंकों के योग को कम करना होगा।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

इनपुट

n = 5230, d = 54

आउटपुट

1

स्पष्टीकरण

The number will be 5230 + (2*54) = 5338

समाधान दृष्टिकोण

समस्या को हल करने का एक सरल तरीका यह होगा कि 1 से 8 तक d के सभी गुणकों की जाँच की जाए, क्योंकि 9वें गुणक पर अंकों का योग दोहराया जाएगा। यह मॉड्यूल 9 पर आधारित है, जो अंकों का योग लौटाएगा। तो, a+d*(9k+l) मॉड्यूल 9, a+d*l मोडुलो 9 के बराबर है। इसलिए हम 1 से 8 तक l*d के सभी गुणकों की जांच करेंगे, और पाया गया न्यूनतम लौटा देंगे।

कार्यक्रम में एक प्रगति इस तथ्य का उपयोग करके की जा सकती है कि अंकों का योग कभी भी 1 से कम नहीं होगा, इसलिए यदि हमारे पास अंकों का योग =1 है, तो हम इसे वापस कर देंगे।

हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम,

उदाहरण

#include <iostream>
using namespace std;
int calcDigitSum(int n) {
   int i = n % 9;
   if (i == 0)
      return 9;
   else
      return i;
}
int findMinDigitSum(int n, int d) {
   int minSum = 10;
   int number;
   for (int i = 1; i < 9; i++) {
      number = (n + i * d);
      minSum = min(minSum, calcDigitSum(number));
      if(minSum == 1)
         return minSum;
   }
   return minSum;
}
int main() {
   int n = 5230, d = 54;
   cout<<"The minimum possible digitsum after adding the number is "<<findMinDigitSum(n, d);
   return 0;
}

आउटपुट

The minimum possible digitsum after adding the number is 1

  1. वह संख्या ज्ञात कीजिए जिसमें C++ में अंक d है

    विचार करें कि हमारे पास एक अंक d है, और ऊपरी सीमा n है। हमें उन सभी संख्याओं को खोजना है जिनमें d 0 से n तक की श्रेणी में है। तो अगर n =20, और अंक 3 है, तो संख्याएं [3, 13] होंगी। इस समस्या को हल करने के लिए, हम प्रत्येक संख्या को स्ट्रिंग के रूप में लेंगे, फिर यदि अंक स्ट्रिंग में मौजूद है, तो संख

  1. सी ++ का उपयोग करके एन को योग के रूप में व्यक्त करने के लिए आवश्यक पैलिंड्रोम की न्यूनतम संख्या।

    समस्या कथन एक संख्या N को देखते हुए, हमें N को उनके योग के रूप में व्यक्त करने के लिए आवश्यक न्यूनतम पैलिंड्रोम की संख्या ज्ञात करनी होगी यदि N =15 है तो 2 पैलिंड्रोम की आवश्यकता है अर्थात 8 और 7. एल्गोरिदम 1. Generate all the palindromes up to N in a sorted fashion 2. Find the size of the smalles

  1. C++ का प्रयोग करते हुए संख्या के गुणनखंडों का न्यूनतम योग ज्ञात कीजिए।

    यहां हम देखेंगे कि किसी दी गई संख्या के कारकों का न्यूनतम योग कैसे प्राप्त करें। मान लीजिए एक संख्या 12 है। हम इसे अलग-अलग तरीकों से गुणनखंडित कर सकते हैं - 12 =12 * 1 (12 + 1 =13) 12 =2 * 6 (2 + 6 =8) 12 =3 * 4 (3 + 4 =7) 12 =2 * 2 * 3 (2 + 2 + 3 =7) न्यूनतम योग 7 है। हम एक संख्या लेंगे और न्यून