Hallo,
ich muss eine Methode schreiben, die einen Buchstaben in einem sortierten Alphabet sucht.
Das sortierte Alphabet und der gesuchte Buchstabe wird über Kommandozeilenparameter eingegeben.
z.b. "abcdfgh" "g"
der gesuchte Buchstabe ist g.
Das hab ich bin jetzt geschrieben:
Er zeigt mir den Fehler beim Aufruf der Methode.
Was mache ich hier falsch?
ich muss eine Methode schreiben, die einen Buchstaben in einem sortierten Alphabet sucht.
Das sortierte Alphabet und der gesuchte Buchstabe wird über Kommandozeilenparameter eingegeben.
z.b. "abcdfgh" "g"
der gesuchte Buchstabe ist g.
Das hab ich bin jetzt geschrieben:
Java:
public static void main(String[] args) {
String st = "";
for(int i=0; i<args.length; i++) {
st += args[i];
}
char[] a = st.toCharArray();
System.out.println(binS(a, a[a.length-1], a[0], a[a.length-2]));
}
public static String binS(char[] a, char c, char low, char high) {
char half = (char) ((low + high) / 2);
if(low <= high) {
if(half == c) {
return c+" ist enthalten";
} else {
if(half <= c) {
return binS(a, c, (char)(half+1), high);
} else {
if(half > c) {
return binS(a, c, half, (char) (high-1));
}
}
}
}
return c+" ist nicht enthalten";
}
Er zeigt mir den Fehler beim Aufruf der Methode.
Was mache ich hier falsch?