Binary to Decimal conversion
#include<stdio.h>
#include<stdlib.h>
int dec=0;
int bintodec(int num,int x,int base);
void main()
{
int num,n,r,x=0,base=1;
printf("enter a binary number\n");
scanf("%d",&n);
num=n;
while(n>0)
{
r=n%10;
if(r>1)
{
printf("enter a proper binary number\n");
exit(0);
}
x++;
n=n/10;
}
bintodec(num,x,base);
printf("decimal value of %d is %d\n",num,dec);
}
int bintodec (int num,int x,int base)
{
if(x==0)
return 0;
else
dec=dec+(num%10)*base;
bintodec(num/10,x-1,base*2);
}
Algorithm Binary to Decimal conversion
Algorithm : Binary to Decimal conversion
Start
Declare the required variables
Read binary number as n
If n has digits other than 0 and 1 display error message and stop
x = length(n)
base = 1
decimalnumber = binaryToDecimal(n,x,base)
Display decimalnumber
Stop
Algorithm : binaryToDecimal
check if x = 0 then return 0
decimal = decimal + (n % 10 * 2)
binaryToDecimal(n/10,x-1,base*2)
Comments
Post a Comment
If you any doubt. Please let me know.