QUESTION:Write a program to convert a decimal number to its binary equivalent and convert a binary number to its decimal equivalent in the number system.
CODE:
import java.io.*;
class Binary
{
String n1,n2;
Binary()
{
n1="";
n2="";
}
int check(String n)
{
int flag=0;
for(int i=0;i<n.length();i++)
{
if(n.charAt(i)=='1' || n.charAt(i)=='0' || n.charAt(i)=='.');
else
{
flag=1;
break;
}
}
if(flag==1)
return(0);
else
return(1);
}
void input()throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter binary number in string1:");
n1=br.readLine();
if(check(n1)==1)
{
System.out.println("Enter binary number in string2:");
n2=br.readLine();
if(check(n2)==0)
{
System.out.println("Not a binary number!");
System.exit(0);
}
}
else
{
System.out.println("Not a binary number!");
System.exit(0);
}
}
String bin_to_dec(String h)
{
int p=-1,q=0;
double sum1=0,sum2=0;
String sum_dec="";
int index=h.indexOf('.');
for(int j=index-1;j>=0;j--)
{
char ch1=h.charAt(j);
int convert1=ch1-48;
sum1+=convert1*Math.pow(2,q);
q++;
}
for(int i=index+1;i<h.length();i++)
{
char ch2=h.charAt(i);
int convert2=ch2-48;
double decimal=convert2*Math.pow(2,p);
p--;
sum2+=decimal;
}
sum_dec+=sum1+sum2;
return(sum_dec);
}
String dec_to_bin(String h)
{
double convert=Double.parseDouble(h);
int integer=(int)convert;
double decimal=convert-integer;
String sum_bin="";
String sum3="",sum4="";
int integer_dec=0;
int count=0;
while(integer!=0)
{
int rem=integer%2;
integer=integer/2;
sum3=""+rem+sum3;
}
while(decimal!=0)
{
decimal*=2;
integer_dec=(int)decimal;
sum4+=integer_dec;
decimal-=integer_dec;
count++;
if(count==5)
{
break;
}
}
sum_bin+=sum3+"."+sum4;
return(sum_bin);
}
}
No comments:
Post a Comment