इस समस्या में, हमें आकार n का एक सरणी arr[] दिया जाता है जिसमें सकारात्मक मान होते हैं। हमारा काम है रिलेशनल ऑपरेटर्स का उपयोग किए बिना किसी ऐरे में अधिकतम खोजना।
समस्या को समझने के लिए एक उदाहरण लेते हैं,
इनपुट: गिरफ्तारी [] ={5, 1, 6, 7, 8, 2}
आउटपुट: 8पी>
समाधान दृष्टिकोण
चूंकि हमें तार्किक ऑपरेटरों का उपयोग किए बिना मूल्यों की तुलना करने की आवश्यकता है। इसके लिए हमें बार-बार घटाव करना होगा, जो संख्या अधिक समय तक चलेगी वह बड़ी होगी।
हम सभी मानों को शून्य होने तक एक-एक करके घटाएंगे। हम सरणी के पहले दो मानों से शुरू करेंगे और दोनों में से सबसे बड़ा पाएंगे। फिर हमें सरणी के सबसे बड़े तत्व के साथ शेष सरणी मानों की तुलना करने की आवश्यकता है। इसका उपयोग करके हम सभी तत्वों का अधिकतम प्राप्त करेंगे।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम,
उदाहरण
#include <iostream> using namespace std; int returnMax(int x, int y) { int c = 0; while(x || y) { if(x) x--; if(y) y--; c++; } return c; } int findMaxEle(int A[], int N) { int maxVal = A[0]; for (int i = N-1; i; i--) maxVal = returnMax(maxVal, A[i]); return maxVal; } int main() { int A[] = {5, 1, 6, 7 , 8, 2}; int N = sizeof(A) / sizeof(A[0]); cout<<"The maximum element of the array is "<<findMaxEle(A, N); return 0; }
आउटपुट
The maximum element of the array is 8>है