Integer और Float Conversions
Precision से जुड़ी चिंताएँ
Integer और Float Conversions, CoddyKit पर C Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह C Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। C Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
संख्याओं की दो दुनियाएँ
C में पूर्णांक होते हैं, जो सटीक और अंशरहित होते हैं, तथा फ़्लोटिंग-पॉइंट मान होते हैं, जो सन्निकट और अंशयुक्त होते हैं। इनके बीच रूपांतरण से मान के संग्रहीत होने का तरीका बदल जाता है।
#include <stdio.h>
int main(void) {
int i = 10;
double d = 10.5;
printf("%d %.1f\n", i, d);
return 0;
}int से double में बड़ा करना
अधिकांश int मान double में बिल्कुल सटीक रूप से आ जाते हैं, इसलिए प्रकार को बड़ा करना सुरक्षित है।
#include <stdio.h>
int main(void) {
int n = 1000;
double d = n;
printf("d = %.1f\n", d);
return 0;
}double से int में छोटा करना
double से int में जाने पर मान शून्य की ओर काटा जाता है और जानकारी खो सकती है।
#include <stdio.h>
int main(void) {
double d = 12.75;
int n = (int)d;
printf("n = %d\n", n);
return 0;
}ऋणात्मक मानों का अंश काटना
शून्य की ओर अंश काटने का अर्थ है कि -2.9 का मान -2 बनता है, -3 नहीं।
#include <stdio.h>
int main(void) {
double d = -2.9;
int n = (int)d;
printf("n = %d\n", n);
return 0;
}float और double की परिशुद्धता
float लगभग 7 सार्थक अंक रखता है, जबकि double लगभग 15 रखता है। double को float में बदलने पर परिशुद्धता कम हो जाती है।
#include <stdio.h>
int main(void) {
double d = 3.14159265358979;
float f = (float)d;
printf("%.5f\n", f);
return 0;
}बड़े int को float में बदलना
बहुत बड़ा int किसी float में बिल्कुल सटीक रूप से प्रदर्शित नहीं हो सकता, जिससे राउंड किया हुआ परिणाम मिलता है।
#include <stdio.h>
int main(void) {
int big = 16777217;
float f = (float)big;
printf("%.1f\n", f);
return 0;
}राउंड करना और अंश काटना
कास्ट करने पर अंश कट जाता है। राउंड करने के लिए पहले 0.5 जोड़ें, धनात्मक मानों के लिए, या लाइब्रेरी फ़ंक्शन का उपयोग करें।
#include <stdio.h>
int main(void) {
double d = 4.6;
int truncated = (int)d;
int rounded = (int)(d + 0.5);
printf("%d %d\n", truncated, rounded);
return 0;
}औसत की गणना
अंश को बनाए रखने के लिए पूर्णांकों का औसत निकालते समय फ़्लोटिंग-पॉइंट विभाजन आवश्यक होता है।
#include <stdio.h>
int main(void) {
int sum = 7, count = 2;
double avg = (double)sum / count;
printf("avg = %.2f\n", avg);
return 0;
}फ़्लोटिंग-पॉइंट समानता की समस्या
फ़्लोटिंग-पॉइंट मान सन्निकट होते हैं, इसलिए उनकी तुलना == से करना जोखिमपूर्ण है। किसी छोटी सहनशील सीमा के भीतर तुलना करें।
#include <stdio.h>
#include <math.h>
int main(void) {
double a = 0.1 + 0.2;
if (fabs(a - 0.3) < 1e-9)
printf("close enough\n");
return 0;
}शर्तों में मिश्रित प्रकार
int की double से तुलना करने पर int को बड़े प्रकार में बदला जाता है, इसलिए तुलना फ़्लोटिंग-पॉइंट में होती है।
#include <stdio.h>
int main(void) {
int n = 3;
double d = 3.5;
if (n < d)
printf("3 < 3.5\n");
return 0;
}सही प्रकार चुनना
गणनाओं और सूचकांकों के लिए पूर्णांकों का उपयोग करें; माप और अनुपातों के लिए फ़्लोटिंग-पॉइंट का उपयोग करें।
#include <stdio.h>
int main(void) {
int items = 4;
double pricePer = 2.5;
printf("total = %.2f\n", items * pricePer);
return 0;
}त्वरित जाँच
पूर्णांक और float रूपांतरणों की अपनी समझ जाँचें।
पुनरावलोकन: पूर्णांक और float रूपांतरण
आपने सीखा कि अलग-अलग प्रकारों के बीच संख्याएँ कैसे बदलती हैं।
- int से double में बदलना सामान्यतः सुरक्षित रूप से प्रकार को बड़ा करता है
- double से int में बदलने पर मान शून्य की ओर काटा जाता है
- float में double की तुलना में कम अंक रखे जाते हैं
- 0.5 जोड़कर या लाइब्रेरी कॉल का उपयोग करके राउंड करें
- float मानों पर
==से बचें; सहनशील सीमा का उपयोग करें
एआई शिक्षक के साथ C सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 39
- पाठ
- 144
अक्सर पूछे जाने वाले प्रश्न
क्या “Integer और Float Conversions” पाठ निःशुल्क है?
हाँ—“Integer और Float Conversions” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और C Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। C Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Integer और Float Conversions” में मैं क्या सीखूँगा?
Precision से जुड़ी चिंताएँ आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ C Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या C Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर C Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“Integer और Float Conversions” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस C Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर C Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- Implicit Conversions
- Explicit Casts
- Integer और Float Conversions
- Conversion की समस्याएँ