**Homework 5, assigned MAR. 23 due MAR 30 at 11:59pm**

### Part A

Write a program in which the main method calls a method with the heading
`public static int subtract(int num)` that takes a three digit integer
`num>` and does the following

- Decomposes it into three digits,
`digit1, digit2` and
`digit3`.
- Using
`Math.max()` and `Math.min()` determines the digits
with the maximum and minimum value and assign them to `maxDigit`
and `minDigit` respectively.
- Using Max3.java from MAR 21, determines the middle digit and assigns it to
`midDigit`.
- Constructs an integer,
`ascend` in which these digits appear in
ascending order. For instance, if the original value of `num` was 673,
the constructed integer would be 367.
- Repeats the last step but this time produces the digits in descending
order. So in our example, it would produce 763. It assigns this to
`descend`.
- Prints these two values.
- Subtracts these two numbers (
`descend - ascend`) and returns this
value in the method.

### Part B

- Write another program that calls method
`subtract` until the
the method returns a value that doesn't change, i.e., 495.