Witam, mam do rozwiązania takie zadanie:
W Polsce mamy dostępne monety o nominałach: 1gr, 2gr, 5 gr, 10gr, 20gr, 1zł 2zł i 5zł. Na ile różnych sposobów możemy otrzymać wartość n zł (n jest liczbą naturalną ) używając dowolnej ilości monet?
Na razie udało mi się zrobić zliczanie ilości sposobów pod warunkiem,że będziemy korzystać z jednego rodzaju monet. Nie wiem jak dalej to "ugryść". Jakby ktoś mi coś podpowiedział to byłbym wdzięczny ;)
import java.util.Scanner;
public class MoneyVariation {
public static void main(String[] args) {
int counter = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("Podaj kwotę");
double amount = scanner.nextDouble();
double temp = amount * 100;
double[] nominal = new double[] { 1.0, 2.0, 5.0, 10.0, 20.0, 50.0, 100.0, 200.0, 500.0 };
for (int j = 0; j < nominal.length; j++) {
double sum = 0;
for (int i = 0; i <= temp; i++) {
sum += nominal[j];
if (sum == temp) {
counter++;
}
}
}
System.out.println("Counter : " + counter);
}
}