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

सी ++ प्रोग्राम बॉक्स बनाने और वॉल्यूम की गणना करने और ऑपरेटर से कम का उपयोग करके जांच करने के लिए

मान लीजिए हमें कुछ शर्तों के साथ एक बॉक्स क्लास को परिभाषित करना होगा। ये इस प्रकार हैं -

  • लंबाई, चौड़ाई और ऊंचाई के लिए क्रमशः तीन विशेषताएँ l, b और h हैं, (ये निजी चर हैं)

  • प्रारंभ में मान सेट करने के लिए l, b, h से 0, और एक पैरामीटरयुक्त कंस्ट्रक्टर सेट करने के लिए एक गैर-पैरामीटरयुक्त कंस्ट्रक्टर को परिभाषित करें।

  • प्रत्येक विशेषता के लिए गेट्टर विधियों को परिभाषित करें

  • एक फ़ंक्शन को परिभाषित करें कैलकुलेटवॉल्यूम () बॉक्स का वॉल्यूम प्राप्त करें

  • ऑपरेटर से कम ओवरलोड (<) वर्तमान बॉक्स को चेक करने के लिए किसी अन्य बॉक्स से कम है या नहीं।

  • एक वैरिएबल बनाएं जो बनाए गए बॉक्स की संख्या की गणना कर सके।

इसलिए, यदि हम तीन बॉक्स (0, 0, 0) (5, 8, 3), (6, 3, 8) के लिए इनपुट लेते हैं और प्रत्येक बॉक्स डेटा प्रदर्शित करते हैं, और जांचते हैं कि तीसरा बॉक्स दूसरे से छोटा है या नहीं, और छोटे बॉक्स का आयतन ज्ञात करें, और यह भी प्रिंट करें कि काउंट वेरिएबल द्वारा उनके कितने बॉक्स हैं।

तब आउटपुट होगा

Box 1: (length = 0, breadth = 0, width = 0)
Box 2: (length = 5, breadth = 8, width = 3)
Box 3: (length = 6, breadth = 3, width = 8)
Box 3 is smaller, its volume: 120
There are total 3 box(es)

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • वॉल्यूम की गणना करने के लिए हमें l*b*h

    . वापस करना होगा
  • कम-से-कम (<) ऑपरेटर को ओवरलोड करने के लिए हमें जांचना होगा

  • यदि वर्तमान वस्तु का l दूसरी वस्तु के l के समान नहीं है, तो

    • यदि वर्तमान वस्तु का l किसी अन्य वस्तु के l से छोटा है तो सही लौटें

  • अन्यथा जब वर्तमान वस्तु का b किसी अन्य वस्तु के b के समान नहीं है, तो

    • यदि वर्तमान वस्तु का b किसी अन्य वस्तु के b से छोटा है तो सही लौटें

  • अन्यथा जब वर्तमान वस्तु का h किसी अन्य वस्तु के h के समान नहीं है, तो

    • यदि वर्तमान वस्तु का h किसी अन्य वस्तु के h से छोटा है तो सही लौटें

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

#include <iostream>
using namespace std;
class Box {
    int l, b, h;
public:
    static int count;
    Box() : l(0), b(0), h(0) { count++; }
    Box(int length, int breadth, int height) : l(length), b(breadth), h(height) { count++; }
    int getLength() const {return l;}
    int getBreadth() const {return b;}
    int getHeight() const {return h;}
    long long CalculateVolume() const {
        return 1LL * l * b * h;
    }
    bool operator<(const Box& another) const {
        if (l != another.l) {
            return l < another.l;
        }
        if (b != another.b) {
            return b < another.b;
        }
        return h < another.h;
    }
};
int Box::count = 0;
int main(){
    Box b1;
    Box b2(5,8,3);
    Box b3(6,3,8);
    printf("Box 1: (length = %d, breadth = %d, width = %d)\n",b1.getLength(), b1.getBreadth(), b1.getHeight());
    printf("Box 2: (length = %d, breadth = %d, width = %d)\n",b2.getLength(), b2.getBreadth(), b2.getHeight());
    printf("Box 3: (length = %d, breadth = %d, width = %d)\n",b3.getLength(), b3.getBreadth(), b3.getHeight());
    if(b3 < b2){
        cout << "Box 3 is smaller, its volume: " << b3.CalculateVolume() << endl;
    }else{
        cout << "Box 3 is smaller, its volume: " << b2.CalculateVolume() << endl;
    }
    cout << "There are total " << Box::count << " box(es)";
}

इनपुट

b1; b2(5,8,3); b3(6,3,8);

आउटपुट

Box 1: (length = 0, breadth = 0, width = 0)
Box 2: (length = 5, breadth = 8, width = 3)
Box 3: (length = 6, breadth = 3, width = 8)
Box 3 is smaller, its volume: 120
There are total 3 box(es)

  1. सी ++ प्रोग्राम पाप (एक्स) और कॉस (एक्स) के मूल्य की गणना करने के लिए

    इनपुट को कोण के रूप में दिया गया है और कार्य दिए गए कोण के अनुरूप sin(x) और cos(x) के मान की गणना करना और परिणाम प्रदर्शित करना है पाप के लिए(x) sin(x) एक त्रिकोणमितीय फलन है जिसका उपयोग x कोण के मान की गणना करने के लिए किया जाता है। फॉर्मूला $$\sin (x) =\displaystyle\sum\limits_{k=0}^\infty \fr

  1. सी ++ में विकर्ण मैट्रिक्स और स्केलर मैट्रिक्स की जांच करने का कार्यक्रम

    मैट्रिक्स M[r][c] दिया गया है, r पंक्तियों की संख्या को दर्शाता है और c कॉलम की संख्या को इस तरह दर्शाता है कि r =c एक वर्ग मैट्रिक्स बनाता है। हमें ज्ञात करना है कि दिया गया वर्ग आव्यूह विकर्ण . है या नहीं और स्केलर मैट्रिक्स या नहीं, अगर यह विकर्ण . है और स्केलर मैट्रिक्स फिर परिणाम में हाँ प्

  1. C++ में घन के आयतन और सतह क्षेत्र के लिए कार्यक्रम

    घन क्या है? घन एक त्रि-आयामी वस्तु है जिसमें चौकोर आकार के छह फलक होते हैं, जिसका अर्थ है कि इसकी लंबाई और चौड़ाई समान है। घन निम्नलिखित गुणों वाला एकमात्र नियमित हेक्साहेड्रोन है - छह चेहरे 12 किनारे 8 कोने घन की आकृति नीचे दी गई है समस्या पक्ष के साथ दिया गया, कार्य एक घन का कुल सतह क्षेत्र