/* File Name : BinAdd.java */
import java.util.*;
public class BinAdd
{
public static String addBit(String a, String b, String c)
{
String r="";
if(a.equals("1") && b.equals("0") || a.equals("0") && b.equals("1"))
{
if( c.equals("0")) r="1";
else { r="0"; c="1"; }
}
else if( a.equals("0") && b.equals("0") )
{
if(c.equals("0")) r="0";
else r="1";
}
else if( a.equals("1") && b.equals("1") )
{
if(c.equals("0")){ r="0"; c="1"; }
else { r="1"; c="1"; }
}
return c+r;
}
public static String add(String a, String b)
{
String r="";
int len=a.length();
String carry="0";
for(int i=len-1;i>=0;i--)
{
String ai=a.substring(i, i+1);
String bi=b.substring(i,i+1);
String res=addBit(ai,bi,carry);
String cb=res.substring(0,1);
String rb=res.substring(1,2);
r=rb+r;
carry=cb;
}
return r;
}
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while (true)
{
System.out.print("> ");
String x = in.next(); // 1st input
if (x.equals("quit")) break;
String y = in.next(); // 2nd input
String z = add(x,y); // compute sum
System.out.println(z); // print it out
}
}
}
import java.util.*;
public class BinAdd
{
public static String addBit(String a, String b, String c)
{
String r="";
if(a.equals("1") && b.equals("0") || a.equals("0") && b.equals("1"))
{
if( c.equals("0")) r="1";
else { r="0"; c="1"; }
}
else if( a.equals("0") && b.equals("0") )
{
if(c.equals("0")) r="0";
else r="1";
}
else if( a.equals("1") && b.equals("1") )
{
if(c.equals("0")){ r="0"; c="1"; }
else { r="1"; c="1"; }
}
return c+r;
}
public static String add(String a, String b)
{
String r="";
int len=a.length();
String carry="0";
for(int i=len-1;i>=0;i--)
{
String ai=a.substring(i, i+1);
String bi=b.substring(i,i+1);
String res=addBit(ai,bi,carry);
String cb=res.substring(0,1);
String rb=res.substring(1,2);
r=rb+r;
carry=cb;
}
return r;
}
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while (true)
{
System.out.print("> ");
String x = in.next(); // 1st input
if (x.equals("quit")) break;
String y = in.next(); // 2nd input
String z = add(x,y); // compute sum
System.out.println(z); // print it out
}
}
}
Comments
Post a Comment