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

x का गुणज ज्ञात कीजिए जो C++ में a^b के सबसे निकट है

मान लीजिए कि हमारे पास तीन पूर्णांक हैं, a, b और x। कार्य x का गुणज प्राप्त करना है, जो ab के सबसे निकट है। तो अगर a =5, b =4 और x =3, तो आउटपुट 624 होगा। 54 =625 के रूप में, और 624 3 का गुणज है, जो 625 के सबसे करीब है।

कार्य सरल है। इस समस्या को हल करने के लिए हमें इन चरणों का पालन करना होगा -

  • गणना संख्या :=a b
  • फिर f :=तल (संख्या/x) का पता लगाएं
  • अब बाईं ओर निकटतम तत्व cl =x * f होगा, और दाईं ओर cr =x * (f + 1)
  • होगा
  • आखिरकार, उनमें से सबसे निकटतम संख्या होगी min(num – cl, cr – num)

उदाहरण

#include <iostream>
#include <cmath>
using namespace std;
long long getClosest(int a, int b, int x) {
   long long num = pow(a, b);
   int f = floor(num / x);
   long long cl = x * f;
   long long cr = x * (f + 1);
   if ((num - cl) < (cr - num))
      return cl;
   else
      return cr;
}
int main() {
   int a = 5, b = 4, x = 3;
   cout << "Find closest element: " << getClosest(a, b, x);
}

आउटपुट

Find closest element: 624

  1. सी ++ में बाइनरी सर्च ट्री में निकटतम तत्व खोजें

    मान लीजिए कि हमारे पास एक बाइनरी सर्च ट्री (BST) और दूसरा लक्ष्य मान है; हमें उस दिए गए BST में k मान ज्ञात करना है जो लक्ष्य के सबसे निकट है। यहां लक्ष्य मान एक फ़्लोटिंग-पॉइंट नंबर है। हम मान सकते हैं कि k हमेशा मान्य होता है, और k कुल नोड्स। तो, अगर इनपुट पसंद है लक्ष्य =3.714286, और k =2, तो

  1. सी ++ में बाइनरी ट्री में निकटतम पत्ता खोजें

    मान लीजिए, एक बाइनरी ट्री दिया गया है। इसमें विभिन्न स्तरों पर पत्ती की गांठें होती हैं। एक और पॉइंटर दिया गया है, जो एक नोड की ओर इशारा कर रहा है। हमें नुकीले नोड से निकटतम लीफ नोड की दूरी ज्ञात करनी होगी। विचार करें कि पेड़ नीचे जैसा है - यहां लीफ नोड्स 2, -2 और 6 हैं। यदि पॉइंटर नोड -5 की ओर इ

  1. C++ का उपयोग करके अभाज्य संख्याओं को खोजने के लिए सबसे तेज़ एल्गोरिथम कौन सा है?

    इराटोस्थनीज की चलनी n से छोटी अभाज्य संख्याओं को खोजने के सबसे प्रभावी तरीकों में से एक है जब n लगभग 10 मिलियन से छोटा है। एराटोस्थनीज की चलनी को प्रदर्शित करने वाला एक कार्यक्रम इस प्रकार दिया गया है। उदाहरण #include <bits/stdc++.h> using namespace std; void SieveOfEratosthenes(int num) { &n