хранение и использование номеров с более чем 32 цифрами в Java! - PullRequest
0 голосов
/ 27 февраля 2011

Я хотел спросить о том, как я могу использовать числа с более чем 32 цифрами в этом коде, код должен умножить два двоичных числа с более чем 32 цифрами, и даже долго не будет работать, и я не знаю, как следуетЯ использую BigInteger в этом коде!может кто-нибудь помочь, спасибо

public static void main(String [] args)
{
    long a , b ;
    Scanner scanner = new Scanner (System.in); 
    a = scanner.nextLong();
    b = scanner.nextLong() ;
    long sumA = 0 ;
    long sumB = 0 ;
    double i = 0;
    while ( a != 0 || b != 0)
    {

        sumA += (a % 10) * Math.pow( 2.0 , i ) ;
        sumB += (b % 10) * Math.pow( 2.0 , i ) ;
        a /= 10 ; 
        b /= 10 ;
        i++ ;
    }
    a = sumA ;
    b = sumB ;
    long c = a * b ;
    long temp = 0 ;
    for (int k = 0 ; c!=0 ; k++)
    {
        temp +=( Math.pow(10.0, k) * (c % 2) ); 
        c /= 2 ;
    }
    System.out.println(temp) ;
}

1 Ответ

0 голосов
/ 27 февраля 2011
...