Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I need to modify my program to run the demo. I have all the methods but the divi

ID: 3557796 • Letter: I

Question

I need to modify my program to run the demo. I have all the methods but the division and the modulus.

Here is the demo:

public class BigIntDemoAddSubtractMultiplyDivideModulus

{

public static void main(String[] args)

{

   BigInt b1;

   BigInt b2;

   BigInt b3;

   b1 = new BigInt("-0");

   b2 = new BigInt("+0");

   b3 = b1.add(b2);

       System.out.println("1) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b1 = new BigInt("1");

   b2 = new BigInt("1");

   b3 = b1.add(b2);

       System.out.println(" 2) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-1");

   b2 = new BigInt("1");

   b3 = b1.add(b2);

       System.out.println(" 3) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("1");

   b2 = new BigInt("-1");

   b3 = b1.add(b2);

       System.out.println(" 4) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-1");

   b2 = new BigInt("-1");

   b3 = b1.add(b2);

       System.out.println(" 5) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("+1");

   b2 = new BigInt("+1");

   b3 = b1.add(b2);

       System.out.println(" 6) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-100");

   b2 = new BigInt("100");

   b3 = b1.add(b2);

       System.out.println(" 7) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("100");

   b2 = new BigInt("-100");

   b3 = b1.add(b2);

       System.out.println(" 8) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-100");

   b2 = new BigInt("-100");

   b3 = b1.add(b2);

       System.out.println(" 9) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("100");

   b2 = new BigInt("100");

   b3 = b1.add(b2);

       System.out.println(" 10) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("200");

   b2 = new BigInt("-0");

   b3 = b1.add(b2);

       System.out.println(" 11) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       //b3 = b1.divideBy(b2);

       //System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       //b3 = b1.modulus(b2);

       //System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-200");

   b2 = new BigInt("-0");

   b3 = b1.add(b2);

       System.out.println(" 12) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       //b3 = b1.divideBy(b2);

       //System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       //b3 = b1.modulus(b2);

       //System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-0");

   b2 = new BigInt("200");

   b3 = b1.add(b2);

       System.out.println(" 13) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-0");

   b2 = new BigInt("-200");

   b3 = b1.add(b2);

       System.out.println(" 14) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("37");

   b2 = new BigInt("26");

   b3 = b1.add(b2);

       System.out.println(" 15) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-37");

   b2 = new BigInt("26");

   b3 = b1.add(b2);

       System.out.println(" 16) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("37");

   b2 = new BigInt("-26");

   b3 = b1.add(b2);

       System.out.println(" 17) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-37");

   b2 = new BigInt("-26");

   b3 = b1.add(b2);

       System.out.println(" 18) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-200111111111111111199999999");

       b2 = new BigInt("3333333333333388888888888888888888555555555555555555555555");

       System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

       b3 = b1.add(b2);

       System.out.println("19) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("66666666666666666666677777777777777777777711111111111111111200");

   b2 = new BigInt("-3333333333333333333344444444444");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("20) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-66666666666666666666677777777777777777777711111111111111111200");

   b2 = new BigInt("-333333");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("21) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("6666666");

   b2 = new BigInt("3333333333333333333344444444444444444444455555555555555550");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("22) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("1111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   b2 = new BigInt("99999999999999999999999999999888888888888888888888888888888881111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("23) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-1111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   b2 = new BigInt("99999999999999999999999999999888888888888888888888888888888881111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("24) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("1111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   b2 = new BigInt("-99999999999999999999999999999888888888888888888888888888888881111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("25) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

       b1 = new BigInt("-1111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   b2 = new BigInt("-99999999999999999999999999999888888888888888888888888888888881111111111111111111111111111111122222222222222222222222222222222222333333333333333333333333333333334444444444444444444444444");

   System.out.println(" b1 is " + b1);

       System.out.println("b2 is " + b2);

   b3 = b1.add(b2);

       System.out.println("26) sum b3 is " + b1 +" + " + b2 + " = " + b3);

       b3 = b1.subtract(b2);

       System.out.println("differance b3 is " + b1 +" - " + b2 + " = " + b3);

       b3 = b1.multiply(b2);

       System.out.println("product b3 is " + b1 +" * " + b2 + " = " + b3);

       b3 = b1.divideBy(b2);

       System.out.println("quotient b3 is " + b1 +" / " + b2 + " = " + b3);

       b3 = b1.modulus(b2);

       System.out.println("modulus b3 is " + b1 +" mod " + b2 + " = " + b3);

}

}

Here is the program:

import java.util.Scanner;

public class BigInt {

   private boolean is_neg; // negative

   private int[] array;

   public BigInt(String b1) {

   String value = b1;

   is_neg = false;

   if (b1.charAt(0) == '+' || b1.charAt(0) == '-') {

   if (b1.length() > 1) {

   value = b1.substring(1);

   } else {

   System.out.println("this contains only sign: " + b1);

   return;

   }

   if (b1.charAt(0) == '-')

   is_neg = true;

   }

   array = new int[value.length()];

   for (int i = 0; i < value.length(); i++) {

   if (Character.isDigit(value.charAt(i))) {

   array[array.length - 1 - i] = Character.digit(value.charAt(i), 10);

   } else {

   System.out.println("this contains non numeric values: " + b1);

   return;

   }

   }

   }

  

   public String toString()

   {

   StringBuilder st = new StringBuilder();

   if (is_neg)

   st.append('-');

   else

   st.append('+');

   for(int i=0; i<array.length; i++)

   {

   st.append(array[array.length - 1 - i]);

   }

   return st.toString();

   }

   private int[] removeLeadingZero(int[] a)

   {

   int i = a.length - 1;

   while (i > 0 && a[i] == 0)

   i--;

   int[] c = new int[i+1];

   for (int j = 0; j < c.length; j++)

   c[j] = a[j];

   return c;

   }

   // return 0 if same, <0 if a<b, > 0 if a > b

   private int compareArr(int[] a, int[] b)

   {

   if (a.length != b.length)

   return a.length - b.length;

   for (int i = a.length - 1; i >= 0; i--)

   {

   if (a[i] != b[i])

   return a[i] - b[i];

   }

   return 0;

   }

   private int[] addArr(int[] a, int[] b)

   {

   int size = Math.max(a.length, b.length) + 1;

   int[] c = new int[size];

   int carry = 0;

   for (int i = 0; i < a.length || i < b.length || carry > 0; i++)

   {

   int sum = carry;

   if (i < a.length)

   sum += a[i];

   if (i < b.length)

   sum += b[i];

   carry = sum / 10;

   sum = sum % 10;

   c[i] = sum;

   }

   return removeLeadingZero(c);

   }

   // assume a >= b

   private int[] subArr(int[] a, int[] b)

   {

   int[] c = new int[a.length];

   int carry = 0;

   for (int i = 0; i < a.length || i < b.length || carry != 0; i++)

   {

   int r = carry;

   if (i < a.length)

   r += a[i];

   if (i < b.length)

   r -= b[i];

   carry = (r < 0 ? -1 : 0);

   if (r < 0)

   r += 10;

   c[i] = r;

   }

   return removeLeadingZero(c);

   }

   public BigInt add(BigInt b)

   {

   BigInt r = new BigInt("0");

   if (is_neg && b.is_neg)

   {

   r.is_neg = true;

   r.array = addArr(array, b.array);

   }

   else if (!is_neg && !b.is_neg)

   {

   r.is_neg = false;

   r.array = addArr(array, b.array);

   }

   else if (!is_neg) // positive + negative

   {

   if (compareArr(array, b.array) >= 0)

   {

   r.is_neg = false;

   r.array = subArr(array, b.array);

   }

   else

   {

   r.is_neg = true;

   r.array = subArr(b.array, array);

   }

   }

   else // negative + positive

   {

   if (compareArr(array, b.array) <= 0)

   {

   r.is_neg = false;

   r.array = subArr(b.array, array);

   }

   else

   {

   r.is_neg = true;

   r.array = subArr(array, b.array);

   }

   }

   return r;

   }

   public BigInt subtract(BigInt b)

   {

   BigInt r = new BigInt("0");

   if (!is_neg && b.is_neg) // positive - negative

   {

   r.is_neg = false;

   r.array = addArr(array, b.array);

   }

   else if (is_neg && !b.is_neg) // negative - positive

   {

   r.is_neg = true;

   r.array = addArr(array, b.array);

   }

   else if (!is_neg && !b.is_neg) // positive - positive

   {

   if (compareArr(array, b.array) >= 0)

   {

   r.is_neg = false;

   r.array = subArr(array, b.array);

   }

   else

   {

   r.is_neg = true;

   r.array = subArr(b.array, array);

   }

   }

   else // negative - negative

   {

   if (compareArr(array, b.array) <= 0)

   {

   r.is_neg = false;

   r.array = subArr(b.array, array);

   }

   else

   {

   r.is_neg = true;

   r.array = subArr(array, b.array);

   }

   }

   return r;

   }

   public BigInt multiple(BigInt b)

   {

   BigInt r = new BigInt("+0");

   int p = 1;

   for (int i = 0; i < array.length; i++)

   {

   int times = array[i] * p;

   for (int j = 0; j < times; j++)

   r = r.add(b);

   p *= 10;

   }

   if (is_neg)

   r.is_neg = !r.is_neg;

   return r;

   }

   public static void main(String[] args)

   {

   Scanner in = new Scanner(System.in);

   System.out.print("Enter a number : ");

   BigInt ba = new BigInt(in.next());

   System.out.print("Enter another number : ");

   BigInt bb = new BigInt(in.next());

   System.out.println(ba.toString() + " + " + bb.toString() + " = " +

   ba.add(bb).toString());

   System.out.println(ba.toString() + " - " + bb.toString() + " = " +

   ba.subtract(bb).toString());

   System.out.println(ba.toString() + " * " + bb.toString() + " = " +

   ba.multiple(bb).toString());

   }

   }

Explanation / Answer

God knows best