Я столкнулся с проблемой с одним из моих заданий, где небольшой частью задания является метод написания для приведенного ниже описания:
Метод, который принимает два значения; значение для обмена и тип монеты для исключения, а затем вернуть минимальное количество монет, необходимое для обмена на общее значение, и вернуть вывод в виде строки. Например, changeCalculator (555,50) может вернуть монеты для обмена: 2 x 200p, 1 x 100p, 0x50, 2 x 20p, 1 x 10p, с остатком 5p.
Я смог написать код, но код, который я написал, имеет System.out.print в цикле, и я не могу заставить код работать, возвращая строковый тип, поскольку я использую цикл.
Все, что вам нужно знать для моего кода, находится в начале класса кода, который я поместил и уже инициализировал список монет в конструкторе:
private List<Integer> coinList = new ArrayList<Integer>();
Вот мой код ниже:
public void changeCalaculator (int totalCoinValue, int excludedCoinType)
{
System.out.print("The coins exchanged are: ");
for (int coin : coinList)
{
if (excludedCoinType == coin)
{
continue;
}
else
{
System.out.print(totalCoinValue/coin + " x " + coin + "p, ");
totalCoinValue = totalCoinValue%coin;
}
}
System.out.print(" with a reminader of " + totalCoinValue + "p");
}