hallo ich bin ein total Anfänger und ich habe ein kleines Rekursion probleme , das ich Auflösen sollte , meine methode sollte die Möglichkeiten , einen Betrag von 10ct in Münzen der Euro-Zone zureuck liefern , ich weiss nicht was ich fuer einen fehler gemacht habe aber irgendwie , will mein Kode nicht funktionieren , kann jemand mir helfen der fehler in der Methode "anzahl" zu finden ?
ich werde ihm dafür sehr dankbar sein
ich werde ihm dafür sehr dankbar sein
Java:
public class Wechseln implements WechselInterface {
public int[] muenzen;
public Wechseln(int[] muenzen) {
this.muenzen=muenzen;
}
public static void main(String[] args) {
int[] muenzen = {1,2,5,10,20,50,100,200};
int b = Integer.parseInt(args[0]);
Wechseln w = new Wechseln(muenzen);
System.out.println("Anzahl der Moeglichkeiten: " +
w.anzahl(b));
String[] moeglichkeiten = w.wechseln(b);
for (String moeglichkeit : moeglichkeiten) {
System.out.println(moeglichkeit);
}
}
public int anzahl(int b) {
if ( b < 0){
return 0 ;
}
else if ( b == 0 ){
return 1;
}
else{
return anzahl(b, this.muenzen.length -1)+ anzahl (b -this.muenzen.length ,this.muenzen.length );
}
}
private int anzahl(int b, int k) {
if ( b < 0){
return 0 ;
}
else if ( b == 0 ){
return 0;
}
else{
return anzahl(b, this.muenzen[k-1]) + anzahl (b - this.muenzen[k] , this.muenzen[k]);
}
}
public String[] wechseln(int b) {
return null;
}
}