Sunday, December 12, 2010

Binary to Decimal And Decimal to Binary Conversion

//PROGRAM TO CONVERT BINARY TO DECIMAL AND VICE-VERSA
#include
#include
#include
#define SIZE 20

int binary_to_decimal(int);
void decimal_to_binary(int);
void main()
{
int ch=0,num=0,temp;
clrscr();
do
{
printf("\n--------------Menu------------------");
printf("\n1_Binary to decimal");
printf("\n2_Decimal to binary");
printf("\n3_Exit from program");
printf("\nEnter your choice<1-3>:");
scanf("%d",&ch);
switch(ch)
{
case 1: // Binary to Decimal
printf("Enter the binary number:");
scanf("%d",&num);
temp=num;
printf("\nThe decimal equivalent of %d is %d",temp,binary_to_decimal(num));
break;
case 2: // Decimal to Binary
printf("\nEnter the decimal number:");
scanf("%d",&num);
temp=num;
printf("\nThe Binary equivalent of %d is ",temp);
decimal_to_binary(num);
break;
case 3: // Exit
exit(0);
break;
default:
printf("\nWrong choice!!!!!!");
break;
}
}
while(ch!=3);
}

int binary_to_decimal(int num)
{
int i=0,sum=0;
while(num!=0)
{
sum=sum+(num%10)*pow(2,i++);
num/=10;
}
return sum;
}

void decimal_to_binary(int num)
{
int array[SIZE],i=0;
while(num!=0)
{
array[i++]=num%2;
num/=2;
}
for(i=i-1;i>=0;i--)
printf("%d",array[i]);
}

No comments:

Post a Comment