C भाषा में MIN() मैक्रो

C Bhasa Mem Min Maikro



C में रिलेशनल ऑपरेशंस का व्यापक रूप से उपयोग किया जाता है और इस भाषा में लिखे गए लगभग हर प्रोग्राम में पाया जा सकता है। इस भाषा में कई ऑपरेटर हैं - सबसे अधिक उपयोग किए जाने वाले ऑपरेटर ( = ), ( > ) से बड़े, और ( < ) से कम हैं। इस प्रकार का ऑपरेशन अक्सर if-स्थितियों में उपयोग किया जाता है। उदाहरण के लिए, इनपुट स्थिति किसी अन्य चर या स्थिरांक के लिए =, >, या < चर का मान है।

ये रिलेशनल ऑपरेशन बहुत उपयोगी हैं. लेकिन ऐसे मामले भी हैं जहां हमें न केवल यह जानना होगा कि एक चर दूसरे से बड़ा है या छोटा है, बल्कि उसका मूल्य भी प्राप्त करना है। हालाँकि यह आसानी से 'if' स्टेटमेंट और सरल रिलेशनल ऑपरेशंस के साथ किया जाता है, C भाषा मैक्रोज़ को ऐसे फ़ंक्शंस भी प्रदान करती है जो दो वेरिएबल्स के बीच अधिकतम या न्यूनतम मान लौटाते हैं।

इस Linuxhint आलेख में, आप सीखेंगे कि दो चरों का न्यूनतम मान ज्ञात करने के लिए मैक्रो MIN() का उपयोग कैसे करें। हम आपको सिंटैक्स, कॉलिंग विधि और उसके द्वारा स्वीकार किया जाने वाला डेटा प्रकार दिखाएंगे। फिर, हम इसका विवरण देखेंगे कि यह कैसे काम करता है और उस अभिव्यक्ति और सूत्र की समीक्षा करेंगे जिस पर यह मैक्रो लागू होता है।







फिर हमने व्यावहारिक उदाहरण में जो सीखा है उसे लागू करते हैं जिसमें कोड स्निपेट और छवियां शामिल हैं जो दिखाती हैं कि मैक्रो MIN() में इनपुट के रूप में विभिन्न डेटा प्रकारों के साथ न्यूनतम कैसे पाया जाए।



C भाषा में MIN() मैक्रो का सिंटैक्स

मिन ( , बी )

C भाषा में MIN() मैक्रो का विवरण



मैक्रो MIN() 'ए' और 'बी' वेरिएबल्स के बीच न्यूनतम मान लौटाता है। मैक्रो MIN() द्वारा प्रदर्शित अभिव्यक्ति एक सही/गलत स्थिति है जहां 'ए' और 'बी' वेरिएबल्स के बीच एक रिलेशनल ऑपरेशन '<' लागू किया जाता है। यदि 'ए' 'बी' से कम है, तो 'ए' लौटाया जाता है। यदि 'बी' 'ए' से कम है, तो 'बी' लौटाया जाता है।





#MIN(a,b) को परिभाषित करें (((a)<(b))?(a):(b))

मैक्रो MIN() अपने इनपुट और आउटपुट में सभी डेटा प्रकारों के साथ एकमात्र नियम के साथ काम करता है कि दोनों इनपुट चर संख्यात्मक मान होने चाहिए।

इस मैक्रो को 'sys' फ़ोल्डर में 'param.h' हेडर में परिभाषित किया गया है। इसका उपयोग करने के लिए, हमें इसे अपने कोड में निम्नानुसार सम्मिलित करना होगा:



#शामिल

मैक्रो मिन() के साथ दो पूर्णांक चर के बीच न्यूनतम कैसे खोजें

इस उदाहरण में, हम int प्रकार के 'a' और 'b' वेरिएबल बनाते हैं, जिसके लिए हम एक मनमाना मान निर्दिष्ट करते हैं और जिसमें से हम मैक्रो MIN() को कॉल करके न्यूनतम पाते हैं। फिर हम printf() फ़ंक्शन का उपयोग करके लौटाए गए मान को आउटपुट करते हैं।

ऐसा करने के लिए, हम 'stdio.h' और 'param.h' हेडर शामिल करते हैं और void प्रकार का एक मुख्य() फ़ंक्शन खोलते हैं। इसमें, हम 'ए' और 'बी' पूर्णांकों को परिभाषित करते हैं और उन्हें यादृच्छिक मान के साथ निर्दिष्ट करते हैं। हम परिणाम को संग्रहीत करने के लिए 'सी' पूर्णांक को भी परिभाषित करते हैं।

फिर, हम मैक्रो MIN() को कॉल करते हैं और इनपुट तर्क के रूप में 'ए' और 'बी' और आउटपुट तर्क के रूप में 'सी' पास करते हैं। हम printf() फ़ंक्शन को कॉल करके लौटा हुआ परिणाम प्रदर्शित करते हैं। इस उदाहरण के लिए निम्नलिखित कोड है:

#शामिल

#शामिल

खालीपन मुख्य ( ) {

int यहाँ = 32 ;

int यहाँ बी = 14 ;

int यहाँ सी ;

सी = मिन ( , बी ) ;

printf ( ' \एन न्यूनतम %i है \एन ' , सी ) ;

}

इसके बाद, हम इस कोड के संकलन और निष्पादन के साथ एक छवि देखते हैं। जैसा कि हम देख सकते हैं, मैक्रो MIN() इस मामले में 'बी' का मान लौटाता है।

यदि हम दोहरे प्रकार के वेरिएबल का उपयोग करते हैं तो भी ऐसा ही होता है।

#शामिल

#शामिल

खालीपन मुख्य ( ) {

दोहरा = 3 ;

दोहरा बी = 1 ;

दोहरा सी ;

सी = मिन ( , बी ) ;

printf ( ' \एन युगल a और b की न्यूनतम संख्या %f है \एन ' , सी ) ;

}


फ़्लोटिंग पॉइंट वेरिएबल के साथ न्यूनतम और अधिकतम

मैक्रो MIN() एक उपयोगी फ़ंक्शन है, लेकिन फ़्लोटिंग पॉइंट मानों का उपयोग करने वाले वेरिएबल्स के लिए इसका उपयोग अनुशंसित नहीं है। इस प्रकार के न्यूनतम मानों को खोजने के लिए, गणित लाइब्रेरी फ़ंक्शंस का एक सेट प्रदान करती है जिसे 'math.h' हेडर में परिभाषित किया गया है। इस सेट में fmin(), fminf(), और fminl() फ़ंक्शन शामिल हैं। आइए इनमें से प्रत्येक फ़ंक्शन के लिए निम्नलिखित सिंटैक्स देखें:

दोहरा fmin ( दोहरा एक्स , दोहरा और ) ;
तैरना fminf ( तैरना एक्स , तैरना और ) ;
लंबा दोहरा fminl ( लंबा दोहरा एक्स , लंबा दोहरा और ) ;

fmin() फ़ंक्शन फ्लोटिंग पॉइंट के साथ डबल (8 बाइट्स) प्रकार के डेटा पर काम करता है। fminf() फ़ंक्शन फ्लोट प्रकार (4 बाइट्स) के डेटा के साथ काम करता है, जबकि fminl() लॉन्ग डबल प्रकार (16 बाइट्स) के डेटा के साथ काम करता है। साथ ही, ये फ़ंक्शन गैर-संख्यात्मक मानों (NaN) को संसाधित करते हैं।

निष्कर्ष

इस Linuxhint आलेख में, हमने दो चरों के बीच न्यूनतम मान ज्ञात करने के लिए मैक्रो MIN() का उपयोग करने के लिए आपको जो कुछ जानने की आवश्यकता है उसे समझाया है। हमने इस मैक्रो के सिंटैक्स और परिभाषा के साथ-साथ उस फॉर्मूले को भी देखा जो दो इनपुट वेरिएबल्स के बीच 'इससे कम' ऑपरेशन (<) के लिए सही/गलत शर्त लागू करता है।

फिर हमने उस सिद्धांत को लागू किया जो हमने कोड स्निपेट और छवियों का उपयोग करके एक व्यावहारिक उदाहरण में सीखा था ताकि आपको दिखाया जा सके कि विभिन्न प्रकार के डेटा के साथ कैसे काम किया जाए। हमने आपको फ़्लोटिंग पॉइंट नंबरों से निपटने के लिए अनुशंसित विकल्प भी दिखाए हैं जहां MIN() के उपयोग की अनुशंसा नहीं की जाती है।