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

C में न्यूनतम तुलनाओं का उपयोग करके सरणी का अधिकतम और न्यूनतम मान ज्ञात करना


हमें पूर्णांकों की एक सरणी दी गई है। कार्य है सरणी के न्यूनतम और अधिकतम तत्व को न्यूनतम संभव तुलनाओं में ढूंढना।

इनपुट

Arr[] = { 1, 2, 4, 5, -3, 91 }

आउटपुट

अधिकतम तत्व: 91 न्यूनतम तत्व: -3

व्याख्या

तुलनाओं को कम करने के लिए, हम अधिकतम और न्यूनतम दोनों को Arr[0] से प्रारंभ करते हैं। फिर दूसरे तत्व से शुरू करके प्रत्येक मान की तुलना min और max से करते हैं और तदनुसार अद्यतन करते हैं।

इनपुट

Arr[] = { 10, 20, 21, 31, 18, 11 }

आउटपुट

अधिकतम तत्व: 31 न्यूनतम तत्व: 10

व्याख्या

यहां भी, तुलनाओं को कम करने के लिए, हम अधिकतम और न्यूनतम दोनों को Arr[0] से प्रारंभ करते हैं। फिर दूसरे तत्व से शुरू करके प्रत्येक मान की तुलना min और max से करते हैं और तदनुसार अद्यतन करते हैं।

उपयोग किया गया दृष्टिकोण

  • हम संख्याओं वाली एक पूर्णांक सरणी Arr[] लेते हैं।

  • फ़ंक्शन getresult(int arr[], int n) सरणी में न्यूनतम तुलनाओं में अधिकतम और न्यूनतम तत्व ढूंढता है।

  • यदि केवल एक तत्व है, तो हम max और min दोनों को arr[0] से प्रारंभ करते हैं।

  • एक से अधिक तत्वों के लिए, हम max को arr[1] और min को arr[0] से प्रारंभ करते हैं (उनकी तुलना करके)।

  • फॉर लूप के अंदर तीसरे तत्व (i=2) से अंतिम तक पार करते हैं।

  • प्रत्येक मान (arr[i]) की तुलना min और max से करते हैं। यदि यह min से कम है, तो min को arr[i] से अद्यतन करें। यदि यह max से अधिक है, तो max को arr[i] से अद्यतन करें।

  • अंत में max और min चरों में संग्रहीत परिणाम प्रिंट करते हैं।

उदाहरण

#include <stdio.h> #include <math.h>  int getresult(int arr[], int n){     int min=0, max=0;     /*यदि केवल एक तत्व है तो उसे min और max दोनों के रूप में लौटाएं*/     if (n == 1)         { min = max = arr[0]; }     /*यदि एक से अधिक तत्व हैं, तो min और max प्रारंभ करें*/     if (arr[0] > arr[1]){         max = arr[0];         min = arr[1];     }     else{         max = arr[1];         min = arr[0];     }     for (int i = 2; i < n; i++){         if (arr[i] > max)             max = arr[i];         else if (arr[i] < min)             min = arr[i];     }     printf(" न्यूनतम तत्व: %d", min);     printf(" अधिकतम तत्व: %d", max); }  /* ड्राइवर प्रोग्राम */ int main(){     int arr[] = {200, 191, 112, -11, 330, 60};     int n = 6;     getresult(arr, n);     return 0; }

आउटपुट

उपरोक्त कोड चलाने पर निम्नलिखित आउटपुट उत्पन्न होगा:

न्यूनतम तत्व: -11 अधिकतम तत्व: 330
  1. C भाषा में लीनियर सर्च का उपयोग करके ऐरे में न्यूनतम एलिमेंट कैसे खोजें? C भाषा में लीनियर सर्च का उपयोग करके ऐरे में न्यूनतम एलिमेंट कैसे खोजें?

    C प्रोग्रामिंग भाषा दो प्रकार की सर्चिंग तकनीक प्रदान करती है: लीनियर सर्च बाइनरी सर्च लीनियर सर्च की एलिमेंट की खोज लीनियर फैशन में की जाती है। यह सबसे सरल सर्चिंग तकनीक है। इसके लिए लिस्ट के सॉर्टेड होने की आवश्यकता नहीं होती। सीमा - यह अधिक समय लेता है और सिस्टम की शक्ति को कम करता है। इनपु

  1. C में स्ट्रिंग को नंबर और नंबर को स्ट्रिंग में बदलना C में स्ट्रिंग को नंबर और नंबर को स्ट्रिंग में बदलना

    दो रूपांतरण फंक्शन्स sscanf(): स्ट्रिंग को नंबर में बदलता है। sprintf(): नंबर को स्ट्रिंग में बदलता है। स्ट्रिंग टू नंबर: sscanf() सिंटैक्स: sscanf(string_name, control_string, &var_list); उदाहरण: तारीख पार्स करना #include <stdio.h> int main() { char a[20] = 02 01 2010; int day, m

  1. C++ में दिए गए नंबर k से विभाज्य लिंक्ड लिस्ट के अधिकतम और न्यूनतम एलिमेंट C++ में दिए गए नंबर k से विभाज्य लिंक्ड लिस्ट के अधिकतम और न्यूनतम एलिमेंट

    लिंक्ड लिस्ट एक रैखिक डेटा संरचना है जिसमें एलिमेंट्स पॉइंटर्स के माध्यम से जुड़े होते हैं। लिंक्ड लिस्ट के प्रत्येक एलिमेंट या नोड में एक डेटा भाग और लिंक होता है, या हम कह सकते हैं कि क्रम में अगले एलिमेंट का पॉइंटर होता है। एलिमेंट्स मेमोरी में नॉन-कंटीगुअस स्थान ले सकते हैं। हमें एक सिंगली लिं