Adding binary numbers

后端 未结 21 1377
孤独总比滥情好
孤独总比滥情好 2020-11-28 07:50

Does anyone know how to add 2 binary numbers, entered as binary, in Java?

For example, 1010 + 10 = 1100.

21条回答
  •  挽巷
    挽巷 (楼主)
    2020-11-28 08:06

    you can write your own One.

    long a =100011111111L;
    long b =1000001111L;
    
    int carry = 0 ;
    long result = 0;
    
    long multiplicity = 1;
    
    while(a!=0 || b!=0 || carry ==1){
        if(a%10==1){
            if(b%10==1){
                result+= (carry*multiplicity);
                carry = 1;
            }else if(carry == 1){
                carry = 1;  
            }else{
                result += multiplicity;
            }
        }else if (b%10 == 1){
            if(carry == 1){
                carry = 1;
            }else {
                result += multiplicity; 
            }
        }else {
            result += (carry*multiplicity);
            carry = 0;
        }
    
        a/=10;
        b/=10;
        multiplicity *= 10;
    
    }
    
    
    System.out.print(result);
    

    it works just by numbers , no need string , no need SubString and ...

提交回复
热议问题