Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी . में पहली सरणी में अधिकतम और दूसरे में न्यूनतम का उत्पाद


दो सरणियों arr1[] और arr2[] क्रमशः कुछ आकार n1 और n2 को देखते हुए, हमें पहली सरणी arr1[] के अधिकतम तत्व और दूसरे के न्यूनतम तत्व का गुणनफल खोजना होगा सरणी arr2 []।

जैसे हमारे पास arr1 [] ={5, 1, 6, 8, 9} और arr2 [] ={2, 9, 8, 5, 3} में तत्व हैं, इसलिए arr1 में अधिकतम तत्व 9 है और न्यूनतम तत्व में है arr2 2 है इसलिए दोनों का गुणनफल 9*2 =18 है, इसी तरह हमें दी गई समस्या को हल करने के लिए एक प्रोग्राम लिखना होगा।

इनपुट

arr1[] = {6, 2, 5, 4, 1}
arr2[] = {3, 7, 5, 9, 6}

आउटपुट

18

स्पष्टीकरण

MAX(arr1) * MIN(arr2) → 6 * 3 = 18

इनपुट

arr1[] = { 2, 3, 9, 11, 1 }
arr2[] = { 5, 4, 2, 6, 9 }

आउटपुट

22

स्पष्टीकरण

MAX(arr1) * MIN(arr2) → 11 * 2 = 22

समस्या को हल करने के लिए नीचे उपयोग किया गया दृष्टिकोण इस प्रकार है

  • हम इनपुट के रूप में दो सरणियाँ arr1 और arr2 करेंगे

  • हम दोनों सरणियों को आरोही क्रम में क्रमबद्ध करेंगे।

  • हम arr1 के अंतिम तत्व (अधिकतम तत्व) और arr2 के पहले तत्व (न्यूनतम तत्व) को गुणा करेंगे।

  • उत्पाद लौटाएं।

एल्गोरिदम

Start
In function int sortarr(int arr[], int n)
   Step 1→ Declare and initialize temp
   Step 2→ For i = 0 and i < n-1 and ++i
      For j = i+1 and j<n and j++
         If arr[i]> arr[j] then,
         Set temp as arr[i]
         Set arr[i] as arr[j]
         Set arr[j] as temp
In Function int minMaxProduct(int arr1[], int arr2[], int n1, int n2)
   Step 1→ Call sortarr(arr1, n1)
   Step 2→ Call sortarr(arr2, n2)
   Step 3→ Return (arr1[n1 - 1] * arr2[0])
In Function int main()
   Step 1→ Declare and Initialize arr1[] = { 2, 3, 9, 11, 1 }
   Step 2→ Declare and Initialize arr2[] = { 5, 4, 2, 6, 9 }
   Step 3→ Declare and Initialize n1, n2 and initialize the size of both arrays
   Step 4→ Print minMaxProduct (arr1, arr2, n1, n2))
Stop

उदाहरण

#include <stdio.h>
int sortarr(int arr[], int n){
   int temp;
   for (int i = 0; i < n-1; ++i){
      for(int j = i+1; j<n; j++){
         if(arr[i]> arr[j]){
            temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
         }
      }
   }
   return 0;
}
int minMaxProduct(int arr1[], int arr2[], int n1, int n2){
   // Sort the arrays to get
   // maximum and minimum
   sortarr(arr1, n1);
   sortarr(arr2, n2);
   // Return product of
   // maximum and minimum.
   return arr1[n1 - 1] * arr2[0];
}
int main(){
   int arr1[] = { 2, 3, 9, 11, 1 };
   int arr2[] = { 5, 4, 2, 6, 9 };
   int n1 = sizeof(arr1) / sizeof(arr1[0]);
   int n2 = sizeof(arr1) / sizeof(arr1[0]);
   printf("%d\n",minMaxProduct (arr1, arr2, n1, n2));
   return 0;
}

आउटपुट

यदि उपरोक्त कोड चलाया जाता है तो यह निम्न आउटपुट उत्पन्न करेगा -

22

  1. C . में तुलनाओं की न्यूनतम संख्या का उपयोग करते हुए अधिकतम और न्यूनतम सरणी

    हमें पूर्णांकों की एक सरणी दी गई है। कार्य तुलना की न्यूनतम संख्या में सरणी के न्यूनतम और अधिकतम तत्व को खोजना है। इनपुट Arr[] = { 1,2,4,5,-3,91 } आउटपुट Maximum element : 91 Minimum Element : -3 स्पष्टीकरण - यहां तुलनाओं की संख्या को कम करने के लिए, हम Arr[0] के साथ अधिकतम और न्यूनतम तत्व को इन

  1. सी में सरणी में किसी तत्व की पहली और आखिरी अनुक्रमणिका के बीच अधिकतम अंतर

    हमें N आकार के पूर्णांकों की एक सरणी दी गई है। सरणी में यादृच्छिक क्रम में पूर्णांक होते हैं। कार्य सरणी में किसी तत्व की पहली और अंतिम अनुक्रमणिका के बीच अधिकतम अंतर खोजना है। हमें एक संख्या ज्ञात करनी है जो सरणी में दो बार प्रकट होती है और इसके सूचकांकों के बीच का अंतर अधिकतम होता है। अगर ऐसे और ज

  1. सरणी के उत्पाद के लिए सी कार्यक्रम

    n तत्वों की एक सरणी गिरफ्तारी [n] को देखते हुए, कार्य उस सरणी के सभी तत्वों के गुणनफल को खोजना है। जैसे हमारे पास 7 तत्वों की एक सरणी गिरफ्तारी [7] है, इसलिए इसका उत्पाद इस तरह होगा उदाहरण Input: arr[] = { 10, 20, 3, 4, 8 } Output: 19200 Explanation: 10 x 20 x 3 x 4 x 8 = 19200 Input: arr[] = { 1