pizza_slimer
Grünschnabel
Hallo !
ich habe folgendes Problem:
Ich möchte, dass die Buchstaben in einem Wort sortiert werden.
Aber der sortiert nur die ersten Buchstaben miteinander.
Der beginnt mit dem "sortieren" nach dem man ein Wort in dem Textfeld eingegeben und dann auf Enter gedrückt hat. Die Befehle innerhalb dieser "Action-Methode" habe ich reinkopiert:
a = textField1.getText(); //übernimmt das Wort
b = textField1.getText(); //und speichert das in a und b
label1.setText("Eingegebene Zeichen: "+a); // gibt das Wort nochmal aus
i = a.length();
label2.setText("Anzahl der Zeichen : "+i); //gibt die Länge des Wortes aus
char[] zeichen = a.toCharArray(); //macht aus dem Wort ein
//"Buchstabenarray"
for (int k=0; k<i;k++)
{
char a = zeichen[k]; //geht jedes Index durch
char b = zeichen[k];
warte(1000);
String text = label3.getText();
label3.setText(text + " " + a +" "+ k); //gibt durch warte() im 1-Sekundentakt
//die Buchstaben nacheinande aus
for (int n=0;n<i-(k+1);n++) //ich weiß nicht warum i-(k+1), hab ich von einer Seite
{
if (zeichen[n] > zeichen[n+1]) { //ist der erste Buchstabe größer als der zweite
a = zeichen[n];
b = zeichen[n+1];
a = b;
a = zeichen[n];
//String text1 = label4.getText();
label4.setText(" "+b+" "+a); //dann vertausche
}
else { //wenn nicht dann gibt normal den ersten aus
a = zeichen[n];
label4.setText("" + a);
}
}
}
Man hat mir schon sämtliche Sortieralgorithmen gezeigt. Der Bubblesort funktioniert nach dem selben Prinzip. Es werden aber nur die ersten beiden Buchstsaben mit einander verglichen. Vielleicht liegt der Fehler in der Ausgabe..?
Das ist bestimmt ein ganz dummer Fehler ich merks schon...
ich habe folgendes Problem:
Ich möchte, dass die Buchstaben in einem Wort sortiert werden.
Aber der sortiert nur die ersten Buchstaben miteinander.
Der beginnt mit dem "sortieren" nach dem man ein Wort in dem Textfeld eingegeben und dann auf Enter gedrückt hat. Die Befehle innerhalb dieser "Action-Methode" habe ich reinkopiert:
a = textField1.getText(); //übernimmt das Wort
b = textField1.getText(); //und speichert das in a und b
label1.setText("Eingegebene Zeichen: "+a); // gibt das Wort nochmal aus
i = a.length();
label2.setText("Anzahl der Zeichen : "+i); //gibt die Länge des Wortes aus
char[] zeichen = a.toCharArray(); //macht aus dem Wort ein
//"Buchstabenarray"
for (int k=0; k<i;k++)
{
char a = zeichen[k]; //geht jedes Index durch
char b = zeichen[k];
warte(1000);
String text = label3.getText();
label3.setText(text + " " + a +" "+ k); //gibt durch warte() im 1-Sekundentakt
//die Buchstaben nacheinande aus
for (int n=0;n<i-(k+1);n++) //ich weiß nicht warum i-(k+1), hab ich von einer Seite
{
if (zeichen[n] > zeichen[n+1]) { //ist der erste Buchstabe größer als der zweite
a = zeichen[n];
b = zeichen[n+1];
a = b;
a = zeichen[n];
//String text1 = label4.getText();
label4.setText(" "+b+" "+a); //dann vertausche
}
else { //wenn nicht dann gibt normal den ersten aus
a = zeichen[n];
label4.setText("" + a);
}
}
}
Man hat mir schon sämtliche Sortieralgorithmen gezeigt. Der Bubblesort funktioniert nach dem selben Prinzip. Es werden aber nur die ersten beiden Buchstsaben mit einander verglichen. Vielleicht liegt der Fehler in der Ausgabe..?
Das ist bestimmt ein ganz dummer Fehler ich merks schon...
Zuletzt bearbeitet: