Moin,
habe eine Aufgabe bekommen die lautet wie folgt:
Aufgabe 4: Anagramme (4 Punkte) Ein Anagramm einer Zeichenkette ist eine Zeichenkette mit exakt gleich vielen, identischen Zeichen in gegebenenfalls anderer Reihenfolge. Beispiel: betrug und geburt sind Anagramme voneinander. Außerdem sollen Leerzeichen ignoriert werden, so dass auch tom marvolo riddle und i am lord voldemort Anagramme voneinander sind. Klein-/Großschreibung soll hingegen berücksichtigt werden. Schreiben Sie eine Methode public static boolean anagramm(String s1, String s2), die prüft, ob die beiden Argumente Anagramme voneinander sind. Testen Sie in der main! Gehen Sie dabei wie folgt vor (und nicht anders, etwa Sortieren mit eingebauten Methoden): Entfernen Sie zunächst alle Leerzeichen (Aufgabe 3). Entfernen Sie nacheinander jedes Zeichen in s1 aus s2, falls s1 und s2 dieselbe Länge haben.
ich habe das Programm soweit bekommen, dass es Groß- und Kleinschreibung ignoriert leider hänge ich bei dem Punkt mit dem Leerzeichen löschen und das hat mir den Code auch total zerschossen...
P.s deswegen sieht der code jetzt auch ein bisschen komisch aus, da ich sehr viel rumprobiert habe.
habe eine Aufgabe bekommen die lautet wie folgt:
Aufgabe 4: Anagramme (4 Punkte) Ein Anagramm einer Zeichenkette ist eine Zeichenkette mit exakt gleich vielen, identischen Zeichen in gegebenenfalls anderer Reihenfolge. Beispiel: betrug und geburt sind Anagramme voneinander. Außerdem sollen Leerzeichen ignoriert werden, so dass auch tom marvolo riddle und i am lord voldemort Anagramme voneinander sind. Klein-/Großschreibung soll hingegen berücksichtigt werden. Schreiben Sie eine Methode public static boolean anagramm(String s1, String s2), die prüft, ob die beiden Argumente Anagramme voneinander sind. Testen Sie in der main! Gehen Sie dabei wie folgt vor (und nicht anders, etwa Sortieren mit eingebauten Methoden): Entfernen Sie zunächst alle Leerzeichen (Aufgabe 3). Entfernen Sie nacheinander jedes Zeichen in s1 aus s2, falls s1 und s2 dieselbe Länge haben.
ich habe das Programm soweit bekommen, dass es Groß- und Kleinschreibung ignoriert leider hänge ich bei dem Punkt mit dem Leerzeichen löschen und das hat mir den Code auch total zerschossen...
Java:
public class Palindrom {
static int counter;
public static void main(String[] args) {
System.out.println(anagramm("tommarvoloriddle", "iamlordvoldemort"));
public static boolean anagramm( String s1, String s2) {
String a = s1.replaceAll(" ", "");
String b = s2.replaceAll(" ","");
a=s1.toLowerCase().trim();
b=s2.toLowerCase().trim();
if( a.length() == b.length()) {
for(int i = 0; i < a.length(); i++) {
for( int j = 0; j < b.length(); j++) {
if(a.charAt(i) == b.charAt(j)) {
counter++;
}
}
}
}
if( counter == a.length()) {
return true;
}
else {
return false;
}
}
Zuletzt bearbeitet von einem Moderator: