207k views
2 votes
Write a static method named largerDigits that accepts two integer parameters a and b and returns a new integer c where each digit of c gets its value from the larger of a's and b's digit in the same place. That is, the ones digit of c is the larger of the ones digit of a and the ones digit of b, and the tens digit of c is the larger of the tens digit of a and the tens digit of b, and so on. You may assume that a and b are positive integers (greater than 0). For example, suppose a is 603452384 and b is 921782. Their digits would be combined as follows to produce c: a 603452380 b 920784 ------------------ c 952784

User Bpdohall
by
4.5k points

1 Answer

6 votes

Answer:

public static void main(String[] args) {

System.out.println(bignum(135, 216));

System.out.println(bignum(172, 312));

System.out.println(bignum(21, 3));

System.out.println(bignum(90, 38906735));

System.out.println(bignum(56002, 123321));

System.out.println(bignum(11223, 4466));

System.out.println(bignum(12345, 12345));

System.out.println(bignum(1, 34892));

}

public static int bignum(int x, int y) {

int sum = 0;

int multiplier = 1;

int digit = 0;

while (x > 0 && y > 0) {

digit = (Math.max(x % 10, y % 10) * multiplier);

sum += digit;

x /= 10;

y /= 10;

multiplier = multiplier * 10;

}

return sum;

}

}

results:

236

372

3

95

56322

4466

12345

2

Step-by-step explanation:

User Branko
by
4.7k points