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

C++ में x का वह गुणक ढूंढें जो a^b के निकटतम हो


मान लीजिए हमारे पास तीन मान a, b और x हैं। हमें x का एक गुणक ढूंढना है, जो a^b के निकटतम हो। मान लीजिए संख्याएं x = 4, a = 3, b = 3 हैं, तो आउटपुट 28 होगा, क्योंकि यह 3^3 = 27 के निकटतम है

दृष्टिकोण सरल है; हमें इन शर्तों का पालन करना होगा -

  • यदि b < 0, और a = 1, तो a^b 1 बन जाता है और इसलिए, x का निकटतम गुणक या तो 0 या x बन जाता है।
  • यदि b < 0 और a > 1, तो, a^b, 1 से कम हो जाता है, और इसलिए x का निकटतम गुणक 0 बन जाता है।
  • यदि b > 0, तो a^b ढूंढें। फिर mul = a^b / x का पूर्णांक भाग लें, तो x का निकटतम गुणक mul*x या (mul + 1)*x है

उदाहरण

#include 
#include 
using namespace std;

void findMultiple(int a, int b, int x) {
    cout << "Nearest multiple: ";
    if (b < 0) {
        if (a == 1 && x == 1)
            cout << "1";
        else
            cout << "0";
    }
    int mul = pow(a, b);
    int ans = mul / x;
    int ans1 = x * ans;
    int ans2 = x * (ans + 1);
    if((mul - ans1) <= (ans2 - mul)){
        cout << ans1;
    } else{
        cout << ans2;
    }
}

int main() {
    int a = 3, b = 3, x = 4;
    findMultiple(a, b, x);
}

आउटपुट

Nearest multiple: 28

  1. - C++ प्रोग्राम: अनसॉर्टेड सरणी में k निकटतम संख्याएं ज्ञात करना

    मान लें हमारे पास कुछ तत्वों के साथ एक सरणी A है। सरणी अनसॉर्टेड है। हमारे पास दो अन्य मान X और k हैं। हमारा कार्य सरणी A से X की k निकटतम तत्वों की संख्या ज्ञात करना है। यदि तत्व X सरणी में मौजूद है, तो यह आउटपुट में नहीं दिखाया जाएगा। यदि A = [48, 50, 55, 30, 39, 35, 42, 45, 12, 16, 53, 22, 56] और

  1. - C++ प्रोग्राम: क्रमबद्ध सरणी में दिए गए मान के k निकटतम तत्व ज्ञात करना

    मान लें हमारे पास कुछ तत्वों के साथ एक सरणी A है। हमारे पास दो अन्य मान X और k हैं। हमारा कार्य सरणी A से X के k निकटतम तत्वों की संख्या ज्ञात करना है। यदि तत्व X सरणी में मौजूद है, तो यह आउटपुट में नहीं दिखाया जाएगा। यदि A = [12, 16, 22, 30, 35, 39, 42, 45, 48, 50, 53, 55, 56] और X = 35, k = 4 है।

  1. - C++ में मूल बिंदु के निकटतम K बिंदु ढूंढना

    मान लीजिए हमारे पास बिंदुओं का एक समुच्चय है। हमारा कार्य K बिंदुओं को ढूंढना है जो मूल बिंदु के निकटतम हैं। मान लीजिए बिंदु (3, 3), (5, -1) और (-2, 4) हैं। तब निकटतम दो (K = 2) बिंदु (3, 3), (-2, 4) हैं।इस समस्या को हल करने के लिए, हम बिंदुओं की सूची को उनकी यूक्लिडियन दूरी के आधार पर सॉर्ट करेंगे,