прошу помочь вроде все работает корректно где может возникнуть бесконечный цикл
package com.javarush.task.task26.task2613;
import com.javarush.task.task26.task2613.command.CommandExecutor;
import com.javarush.task.task26.task2613.exception.InterruptOperationException;
import java.util.Arrays;
import java.util.Locale;
public class CashMachine {
public static void main(String[] args) {
Locale.setDefault(Locale.ENGLISH);
Operation operation;
try {
CommandExecutor.execute(Operation.LOGIN);
do {
operation = ConsoleHelper.askOperation();
CommandExecutor.execute(operation);
} while (operation != Operation.EXIT);
}catch (InterruptOperationException e) {
ConsoleHelper.writeMessage("Goodbye!");
}
/*int[] denominations = {500, 500, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 100, 200, 200, 200};
int sum = 600;
System.out.println(getMoneys(denominations, sum));*/
}
public static int getMoneys(int[] denominations, int sum) {
int money = 0;
Arrays.sort(denominations);
for (int i = denominations.length - 1; i >= 0 ; i--) {
int currNomination = denominations[i];
if (currNomination <= sum) {
money += currNomination;
sum -= currNomination;
System.out.println(currNomination);
}
}
return money;
}
}