C प्रोग्रामिंग भाषा में दशमलव भिन्न को बाइनरी भिन्न में बदलने की समझ के लिए नीचे दिए गए उदाहरणों पर विचार करें।
उदाहरण 1 - 25 को बाइनरी में बदलना
- चरण 1 - 25 / 2 शेष: 1, भागफल: 12
- चरण 2 - 12 / 2 शेष: 0, भागफल: 6
- चरण 3 - 6 / 2 शेष: 0, भागफल: 3
- चरण 4 - 3 / 2 शेष: 1, भागफल: 1
- चरण 5 - 1 / 2 शेष: 1, भागफल: 0
तो समतुल्य बाइनरी संख्या है: 11001
उदाहरण 2 - 0.7 को बाइनरी में बदलना
- चरण 1 - 0.7 * 2 = 1.4, पूर्णांक भाग = 1
- चरण 2 - 0.4 * 2 = 0.8, पूर्णांक भाग = 0
- चरण 3 - 0.8 * 2 = 1.6, पूर्णांक भाग = 1
- चरण 4 - 0.6 * 2 = 1.2, पूर्णांक भाग = 1
- चरण 5 - 0.2 * 2 = 0.4, पूर्णांक भाग = 0
- चरण 6 - 0.4 * 2 = 0.8, पूर्णांक भाग = 0
तो समतुल्य बाइनरी संख्या है: 0.101100
चरण 3 - अंत में, दशमलव संख्या 25.7 का बाइनरी मान निम्नानुसार है:
11001 + 0.101100 = 1101.101100
उदाहरण
निम्नलिखित C प्रोग्राम दशमलव भिन्न को बाइनरी भिन्न में बदलता है:
#include <stdio.h>
int main(){
long double fraDecimal, fraBinary, bFractional = 0.0, dFractional, fraFactor = 0.1;
long int dIntegral, bIntegral = 0;
long int intFactor = 1, remainder, temp, i;
printf("Enter any fractional decimal number: ");
scanf("%Lf", &fraDecimal);
dIntegral = fraDecimal;
dFractional = fraDecimal - dIntegral;
while(dIntegral != 0){
remainder = dIntegral % 2;
bIntegral = bIntegral + remainder * intFactor;
dIntegral = dIntegral / 2;
intFactor = intFactor * 10;
}
for(i = 1; i <= 6; i++){
dFractional = dFractional * 2;
temp = dFractional;
bFractional = bFractional + fraFactor * temp;
if(temp == 1)
dFractional = dFractional - temp;
fraFactor = fraFactor / 10;
}
fraBinary = bIntegral + bFractional;
printf("Equivalent binary value: %lf", fraBinary);
return 0;
}
आउटपुट
Enter any fractional decimal number: 5.7 Equivalent binary value: 101.101100