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

C में फ्लोटिंग पॉइंट नंबर राउंड करने के लिए वन-लाइनर फंक्शन


टर्नरी ऑपरेटर और टाइप कास्टिंग का उपयोग करके एक लाइन में राउंडिंग फंक्शन लिखा जा सकता है।

वन-लाइनर फंक्शन

int my_round(float number) {
    return (int)(number < 0 ? number - 0.5f : number + 0.5f);
}

कैसे काम करता है

  • धनात्मक संख्या: 0.5 जोड़कर ट्रंकेशन से निकटतम इंटीजर प्राप्त होता है।
  • ऋणात्मक संख्या: 0.5 घटाकर (अधिक ऋणात्मक) सही राउंडिंग होती है।
  • (int) कास्ट भिन्नात्मक भाग हटाता है (शून्य की ओर ट्रंकेट)।

उदाहरण

#include <stdio.h>

int my_round(float number) {
    return (int)(number < 0 ? number - 0.5f : number + 0.5f);
}

int main() {
    printf("Rounding of 2.48: %d\n", my_round(2.48));   // 2
    printf("Rounding of 2.5: %d\n", my_round(2.5));     // 3
    printf("Rounding of -5.79: %d\n", my_round(-5.79)); // -6
    printf("Rounding of -5.5: %d\n", my_round(-5.5));   // -6
    return 0;
}

आउटपुट

Rounding of 2.48: 2
Rounding of 2.5: 3
Rounding of -5.79: -6
Rounding of -5.5: -6

सीमाएं और बेहतर विकल्प

  • हाफ-वे केस: 2.5 → 3, -2.5 → -3 (अवे फ्रॉम जीरो)। यह "राउंड हाफ अवे फ्रॉम जीरो" है।
  • बड़े मान: float प्रिसिजन सीमा (~7 डिजिट्स)। double के लिए ओवरलोड लिखें।
  • मानक लाइब्रेरी: round() (math.h/cmath, C99/C++11) उपयोग करें - यह IEEE 754 अनुरूप है।

मानक round() उपयोग

#include <math.h>
#include <stdio.h>

int main() {
    printf("round(2.5) = %.0f\n", round(2.5));   // 3
    printf("round(-2.5) = %.0f\n", round(-2.5)); // -3
    return 0;
}
  1. Excel में ROUND फंक्शन का उपयोग कैसे करें Excel में ROUND फंक्शन का उपयोग कैसे करें

    Excel में ROUND फंक्शन एक फॉर्मूला बनाता है जो किसी भी मान को अंकों की एक विशिष्ट संख्या में राउंड करता है। यहां बताया गया है कि Excel में ROUND फंक्शन का उपयोग दशमलव बिंदु के बाएं या दाएं, निकटतम पूर्ण संख्या, और निकटतम 10 या 100 में संख्याओं को राउंड करने के लिए कैसे करें। इस लेख के निर्देश Micro

  1. C में फ्लोटिंग पॉइंट संख्या में सेट बिट्स गिनना C में फ्लोटिंग पॉइंट संख्या में सेट बिट्स गिनना

    इस समस्या में एक फ्लोटिंग पॉइंट मान दिया गया है। हमें इसके बाइनरी प्रतिनिधित्व में सेट बिट्स की संख्या ढूंढनी है। उदाहरण के लिए, यदि एक फ्लोटिंग पॉइंट संख्या 0.15625 है तो इसमें छह सेट बिट्स हैं। एक सामान्य C कंपाइलर सिंगल प्रिसिजन फ्लोटिंग पॉइंट प्रतिनिधित्व का उपयोग करता है। तो यह इस तरह दिखेगा।

  1. Excel में ROUND फ़ंक्शन का उपयोग करके संख्याओं को कैसे राउंड करें Excel में ROUND फ़ंक्शन का उपयोग करके संख्याओं को कैसे राउंड करें

    ऐसे समय होते हैं जब मानों को निकटतम दशमलव या पूर्ण संख्या में राउंड करना आपके Excel प्रेजेंटेशन के रूप और स्पष्टता को सुधारने के लिए उपयोग किया जाना चाहिए। जब आप संख्याओं को राउंड करते हैं, तो आप कम से कम महत्वपूर्ण अंकों को हटा देते हैं। इसके परिणामस्वरूप आपकी पसंदीदा सटीकता स्तर के साथ अधिक प्रस्त