In this exercise you will examine a program used by a bank- GW Bank- that gives customers with very large account balances a bonus. To determine this, the bank first defines a minimum balance required to earn this bonus. Note that both minimum balance required to earn the bonus and a customer's current balance must be positive numbers. A customer is given a bonus if their balance is greater than the minimum balance by more than 50% of the minimum balance. For example, if the minimum balance of the bank is 1000 then any customer who has a balance which is greater than 1500 gets a bonus (since 50% of 1000 is 500, and the difference between the customers balance and the minimum balance of 1000 should be greater than 500). If a customer qualifies for a bonus, then their bonus amount is 10% of the amount by which their balance exceeds the minimum balance. If the customer does not qualify for the bonus, then their balance should remain unchanged. For example, if the customer has a balance of 2000 (with minimum balance defined as 1000) then they earn a bonus of 100 = 10%(2000-1000) and their new balance is 2100. If a customer has a balance of 1200 then they earn no bonus and their balance remains unchanged at 1200.
Your task is to examine the C code provided to you which is meant to take as input the minimum balance, and the customer's current balance and prints to the screen whether the customer gets a bonus or not, and prints the new balance. Is this program correct for all possible values of balance and minimum balance. Run the program for different values of minumum balance and current balance to figure out if this program is correct. Your task is to determine (a) if the program is correct and (b) if it is incorrect then to identify the problem and fix it.