Heim > Backend-Entwicklung > C++ > C++-Programm zum Erstellen einer Box, Berechnen des Volumens und Überprüfen mit dem Kleiner-als-Operator

C++-Programm zum Erstellen einer Box, Berechnen des Volumens und Überprüfen mit dem Kleiner-als-Operator

PHPz
Freigeben: 2023-08-30 14:49:13
nach vorne
1331 Leute haben es durchsucht

C++-Programm zum Erstellen einer Box, Berechnen des Volumens und Überprüfen mit dem Kleiner-als-Operator

Angenommen, wir müssen eine Boxklasse mit wenigen Bedingungen definieren. Wie folgt:

  • Die drei Attribute l, b und h repräsentieren jeweils Länge, Breite und Höhe (dies sind private Variablen).

  • Definieren Sie einen nichtparametrischen Konstruktor, um l, b, h auf 0 zu setzen, und definieren Sie ihn ein parametrisierter Konstruktor zum anfänglichen Festlegen der Werte.

  • Definieren Sie die Getter-Methode jedes Attributs.

  • Definieren Sie eine Funktion berechneVolume(), um das Volumen der Box zu ermitteln.

  • Der Operator „Kleiner überladen als“ (

  • Erstellen Sie eine Variable, die die Anzahl der erstellten Boxen zählt.

  • Wenn wir also drei Kästchen (0, 0, 0) (5, 8, 3), (6, 3, 8) eingeben und die Daten für jedes Kästchen anzeigen und prüfen, ob das dritte Kästchen kleiner ist, ist es klein Eine davon ist größer als die zweite, ermitteln das Volumen der kleineren Box und geben durch Zählen der Variablen aus, wie viele Boxen sie haben.

    Dann lautet die Ausgabe

    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)
    Nach dem Login kopieren
    Nach dem Login kopieren

    Um dieses Problem zu lösen, folgen wir den folgenden Schritten:

    • Um das Volumen zu berechnen, müssen wir l*b*h zurückgeben.

    • Um die Kleiner als (<) zu überladen Operator müssen wir prüfen, ob <) 运算符,我们必须检查

    • das L des aktuellen Objekts sich von dem L eines anderen Objekts unterscheidet, dann gibt

      • true zurück, wenn das L des aktuellen Objekts kleiner ist als das L des anderen Objekts

    • sonst , wenn sich das b des aktuellen Objekts vom gegebenen b eines anderen Objekts unterscheidet, dann gibt

      • true zurück, wenn das b des aktuellen Objekts kleiner ist als das b des anderen Objekts

    • Andernfalls, wenn das aktuelle Objekt Wenn h ist anders als h bei gegebenem anderen Objekt, dann

      • Gibt „true“ zurück, wenn h des aktuellen Objekts kleiner als h eines anderen Objekts ist

    Beispiel

    Schauen wir uns zum besseren Verständnis die folgende Implementierung an –

    #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)";
    }
    
    Nach dem Login kopieren

    Eingabe

    b1; b2(5,8,3); b3(6,3,8);
    Nach dem Login kopieren

    Ausgabe

    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)
    Nach dem Login kopieren
    Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonC++-Programm zum Erstellen einer Box, Berechnen des Volumens und Überprüfen mit dem Kleiner-als-Operator. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage