हमें एक घनाभ की भुजाओं का योग दिया गया है। एक घनाभ की तीन भुजाएं होती हैं: लंबाई, चौड़ाई और ऊंचाई। घनाभ का आयतन तीनों भुजाओं के गुणनफल के रूप में गणना किया जाता है।
घनाभ का आयतन = लंबाई × चौड़ाई × ऊंचाई
अधिकतम आयतन तब प्राप्त हो सकता है जब तीनों भुजाएं यथासंभव एक-दूसरे के करीब हों।
आइए अब एक उदाहरण का उपयोग करके समझते हैं कि हमें क्या करना है:
उदाहरण के लिए
यहां दी गई समस्या हमें भुजाओं का योग प्रदान करती है, मान लें S। और भुजाएं हों L, B, H। आयतन को अधिकतम करने के लिए हमें भुजाओं को यथासंभव करीब ढूंढना होगा। मान लें S=6। संभावित भुजाएं हो सकती हैं:
[L=1, B=1, H=4] आयतन=4 [L=1, B=2, H=3] आयतन=6 [L=2, B=2, H=2] आयतन=8
नोट - अन्य संयोजनों के समान परिणाम होंगे। इसलिए अधिकतम आयतन तब प्राप्त होता है जब L, B, H एक-दूसरे के करीब या बराबर होते हैं।
इसलिए:
इनपुट - S=6
आउटपुट - दी गई भुजाओं के योग के साथ घनाभ का अधिकतम आयतन 8 है।
व्याख्या - आइए योग S को L, B, H में यथासंभव समान रूप से विभाजित करें।
L = S/3 → (L=2 पूर्णांक भाग, शेष S है 4) B = (S-L)/2 = (S-S/3)/2 → (B=2, शेष S है 2) H = S-L-B = S-S/3-(S-S/3) → (H=2, शेष S है 0)
इनपुट - S=10
आउटपुट - दी गई भुजाओं के योग के साथ घनाभ का अधिकतम आयतन 36 है।
व्याख्या - आइए योग S को L, B, H में यथासंभव समान रूप से विभाजित करें।
L = S/3 → (L=3 पूर्णांक भाग, शेष S है 7) B = (S-L)/2 = (S-S/3)/2 → (B=3, शेष S है 4) H = S-L-B = S-S/3-(S-S/3) → (H=4, शेष S है 0)
नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण
- उपयोगकर्ता से योग के रूप में इनपुट लें।
- लंबाई की गणना योग/3 (इंटीजर अंकगणित) के रूप में करें और योग को योग-लंबाई के रूप में अपडेट करें।
- चौड़ाई की गणना योग/2 (इंटीजर अंकगणित) के रूप में करें और योग को योग-चौड़ाई के रूप में अपडेट करें।
- अब शेष योग को ऊंचाई निर्दिष्ट करें।
- नोट - भुजाओं की गणना का क्रम मायने नहीं रखता।
उदाहरण
#include <bits/stdc++.h>
using namespace std;
int Maximize_Volume(int sumofsides) {
int length, breadth, height;
length = breadth = height = 0;
// लंबाई खोजना
length = sumofsides / 3;
sumofsides -= length;
// चौड़ाई खोजना
breadth = sumofsides / 2;
// शेष योग ऊंचाई है
height = sumofsides - breadth;
return length * breadth * height;
}
// ड्राइवेन प्रोग्राम
int main() {
int sos = 12;
cout << "Maximized volume of the cuboid with given sum of sides is " << Maximize_Volume(sos) << endl;
return 0;
}
आउटपुट
Maximized volume of the cuboid with given sum of sides is 64