Anagramme auslesen (AWT Applet)

Status
Nicht offen für weitere Antworten.
G

Gast

Gast
hi,

auch wenn hier keine hausaufgaben gemacht werden sollen, möchte ich hier an all die hilfsbereiten und netten java programmierer appelieren ;)

wir nehmen in informatik seit kurzem java durch und haben folgende aufgabe bekommen:


schreiben sie ein java applet mit dem namen anagramme, welches alle möglichen
anagramme eines wortes bildet.



dabei sind auch ganze sätze wie z.b. das mittlerweile 'berühmte' o, draconian devil gefragt.

ich habe nun zwar eine idee, wie es gehen könnte, aber wie ich das umsetzen soll ist mir ein rätsel...
im netz habe ich mich auch schlau gemacht, allerdings werde ich da nicht wirklich fündig.




vielen, vielen dank im voraus...
 

Ariol

Top Contributor
Benutz ein Char-Array

1. anagramm
tausche vom wort die ersten beiden buchstaben aus.

2. anagramm
tausche vom wort den 2. und den 3. buchstaben aus

3. anagramm
tausche vom 2. anagramm die ersten beiden buchstaben aus.


usw.


Beispiel

hallo:

1. ahllo
2. hlalo
3. lhalo
4. hllao
.....
 
G

Gast

Gast
hi,

erst einmal vielen dank!

was ist aber, wenn ich jetzt bspw. das wort 'ton' habe, welches eine ungerade anzahl an buchstaben hat?
 
G

Gast

Gast
ok, ton ist ein schlechtes beispiel :p

aber generell anagramme mit einer ungeraden anzahl an buchstaben...
 
G

Gast

Gast
vergiss alles, was ich gesagt habe ;)

vielen dank für deinen lösungsvorschlag...
 

Ariol

Top Contributor
wieso?

ton ist doch einfach:

1. otn
2. tno
3. nto
...

von hinten gehts besser:

ton <-original
tno <-hinten getauscht

otn <-2.Buchstabe nach vorne
ont <-hinten getauscht

nto <-3.Buchstabe nach vorne
not <-hinten getauscht


Bei 4 Buchstaben must du dann die gleichen Schritte durchführen:
(TIER)

T IER -> IER auf das beispiel oben anwenden (T bleibt vorangestellt)
I TER -> TER auf das beispiel oben anwenden (I bleibt vorangestellt)
E TIR -> TIR auf das beispiel oben anwenden (E bleibt vorangestellt)
R TIE -> TIE auf das beispiel oben anwenden (R bleibt vorangestellt)


damit bekommst du insgesammt x! anagramme (doppelte nicht ausgeschlossen)
 

abollm

Top Contributor
Gast hat gesagt.:
hi,
[..]

schreiben sie ein java applet mit dem namen anagramme, welches alle möglichen
anagramme eines wortes bildet.



dabei sind auch ganze sätze wie z.b. das mittlerweile 'berühmte' o, draconian devil gefragt.

ich habe nun zwar eine idee, wie es gehen könnte, aber wie ich das umsetzen soll ist mir ein rätsel...
im netz habe ich mich auch schlau gemacht, allerdings werde ich da nicht wirklich fündig.

vielen, vielen dank im voraus...

Hm, ich halte die Aufgabenstellung für unpräzise. Meinen die nun jede mögliche Kombination oder wirkliche Anagramme?

Ein Anagramm ist ja dadurch gekennzeichnet, dass aus dem Ausgangswort oder der -phrase wieder sinnvolle Wörter oder Phrasen entstehen.

Beim Wort Not gibt es die folgenden (theoretisch) möglichen Kombinationen (Groß- und Kleinschreibung außer Acht gelassen):

0: not
1: nto
2: ont
3: otn
4: ton
5: tno

Sinnvoll ist eigentlich nur das Wort "ton". Die anderen Kombinationen stellen höchstens Abkürzungen dar.

Benutz mal die Forensuche. Ich hatte hier vor geraumer Zeit einmal ein Programm dazu gepostet.
 

Ariol

Top Contributor
Nicht böse sein, aber ich glaube nur sinnvolle anagramme zu bilden ist etwas zu kompliziert für Gast.
Ne Datenbankanbindung scheint doch etwas zu heftig zu sein
 

abollm

Top Contributor
Ariol hat gesagt.:
Nicht böse sein, aber ich glaube nur sinnvolle anagramme zu bilden ist etwas zu kompliziert für Gast.
Ne Datenbankanbindung scheint doch etwas zu heftig zu sein

Die Kombinationen zu bilden ist dagegen ziemlich trivial und zudem nur sinnvoll bei Wörtern bis max. ca. 9 Buchstaben.
 

Ariol

Top Contributor
Gast hat gesagt.:
wir nehmen in informatik seit kurzem java durch und haben folgende aufgabe bekommen:

Waren deine ersten Java-Programme nicht trivial???

Hallo Welt-Programm

Schreiben sie eine Klasse Konto, mit ein und Auszahlen....



Da ist es doch noch recht anspruchsvoll dämlich anagramme zu bilden, wenn auch vielleicht nicht so sinnvoll!
 

abollm

Top Contributor
Ariol hat gesagt.:
Gast hat gesagt.:
wir nehmen in informatik seit kurzem java durch und haben folgende aufgabe bekommen:

Waren deine ersten Java-Programme nicht trivial???

Hallo Welt-Programm

Schreiben sie eine Klasse Konto, mit ein und Auszahlen....

Da ist es doch noch recht anspruchsvoll dämlich anagramme zu bilden, wenn auch vielleicht nicht so sinnvoll!

Zunächst: Trivial heißt ja nicht zwingend "supereinfach", "anspruchslos" oder etwas ähnliches. Grundsätzlich hast du ja Recht, nur geht es mir um die Aufgabenstellung Man sollte dann eher von Kombinationen und nicht von Anagrammen reden.
 
G

Gast

Gast
also erst einmal vielen dank an alle antworten...

ne datenbank anbindung übersteigt wirklich meine 'fähigkeiten', hab auch dergleichen im netz gefunden und war damit hoffnungslos überfordert...

der lehrer ist mit einer auflistung aller möglichen kombinationen zufrieden.

@abollm
hab in der forensuche nichts gefunden. für einen link wäre ich dir seeehr dankbar ;)
 
G

Gast

Gast
@ariol

wir haben java nie wirklich erklärt bekommen...

uns wurden ein, zwei snippets gegeben und damit mussten wir dann arbeiten.
mein erstes applet war ein kopfrechentrainer für die 6te klasse (wo ich ein komplettes wochenende dran gesesen habe...)
 

Ariol

Top Contributor
abollm hat gesagt.:
Zunächst: Trivial heißt ja nicht zwingend "supereinfach", "anspruchslos" oder etwas ähnliches. Grundsätzlich hast du ja Recht, nur geht es mir um die Aufgabenstellung Man sollte dann eher von Kombinationen und nicht von Anagrammen reden.

Jupp, da muss ich dir Recht geben. :applaus: Aber wir hatten auch des öfteren Übungen, wo man 5 mal überlegen musste was jetzt gewollt ist. :?

Ist halt so, da muss man durch
 

abollm

Top Contributor
Gast hat gesagt.:
also erst einmal vielen dank an alle antworten...

[..]der lehrer ist mit einer auflistung aller möglichen kombinationen zufrieden.

@abollm
hab in der forensuche nichts gefunden. für einen link wäre ich dir seeehr dankbar ;)

Sorry, auch ich habe das mit dieser "genialen" Forensuche nicht gefunden. Deshalb hier ein Programm aus meinem Fundus zum Thema, d.h. per Callback werden alle Kombinationen eines Wortes ermittel. Vorsicht, nur bis ca. 8 .. 9 Buchstaben verwenden!
Code:
public class CombinationsByCallback {
    public interface Callback {
        public void notify(String combination);
    }

    static public void generateCombinations(String v, Callback callback) {
        next(v.toCharArray(), 0, callback);
    }

    static private void next(char[] values, int level, Callback callback) {
        if (level < values.length) {
            next(values, level + 1, callback);
            for (int index = level + 1; index < values.length; index++) {
            	char temp = values[level];
                values[level] = values[index];
                values[index] = temp;
                next(values, level + 1, callback);
                values[index] = values[level];
                values[level] = temp;
            }
        } else {
            callback.notify(new String(values));
        }
    }

    public static void main(String[] args) {
            // hiermit generierst du alle Kombinationen eines Worts:
            generateCombinations("superpoet", new CombinationsByCallback.Callback() {
            int count = 1;

            public void notify(String combination) {
                
            	System.out.println(count++ + ": " + combination+ " ");
            }
        });
    }
}
 

abollm

Top Contributor
@Gast:
Das Progarmm da oben wird dir dein Lehrer sicher nicht als dein eigenes Produkt abkaufen, aber es stellt eben eine Möglichkeit dar, das Problem zu lösen.

Lustig ist noch, das das von mir willkürlich gewählte Wort "superpoet" u.a. die Kombination "pupsroete" enthält. ;-)
 

Ariol

Top Contributor
japp, auf die länge des wortes musst du aufpassen, da bei n Buchstaben n! Kombinationen rauskommen (natürlich bei gleichen Buchstaben auch doppelte, aber auch die werden ja berechnet)

soll heißen: 10 Buchstabe ergeben 3,6288Mio Kombinationen

Die zu errechnen dauert natürlich ordentlich (wenn das Programm nicht abstürzt)
 
G

Gast

Gast
vielen, vielen dank an alle...


@abollm
du musst das jetzt nicht machen, aber fragen tu ich dennoch (kostet ja nichts ;) )

könntest du mir auf der basis deines programmes mithilfe dieser befehle, die wir bekommen haben

-> http://img247.imageshack.us/img247/3706/picture1bx2.png

den gewünschten 'anagramm-generator' erstellen?

wäre gaaaanz nett von dir :D (wenn du evtl. interesse an einer joost einladung hast... ;) )
 

abollm

Top Contributor
Gast hat gesagt.:
vielen, vielen dank an alle...


@abollm
du musst das jetzt nicht machen, aber fragen tu ich dennoch (kostet ja nichts ;) )

könntest du mir auf der basis deines programmes mithilfe dieser befehle, die wir bekommen haben

-> http://img247.imageshack.us/img247/3706/picture1bx2.png

den gewünschten 'anagramm-generator' erstellen?

wäre gaaaanz nett von dir :D (wenn du evtl. interesse an einer joost einladung hast... ;) )

Hey, du must die AUfgabe erledigen, nicht ich!

Bedenke: Das ist hier kein Aufgabenlösungsforum, weder für Schüler noch für Studis.

Wo genau liegt denn dein Problem oder deine Probleme bezüglich der Anforderungen?

Irgendwie habe ich noch in Erinnerung, dass du ein Applet erstellen sollst, richtig? Das allein ist schon ein Thema für sich. Hast du irgendein Gerüst, auf dem man aufbauen kann.

Ich habe heute zudem eine Terminaufgabe und dürfte hier im Grunde gar keine Beiträge lesen geschweige denn Hausaufgaben lösen.
 
G

Gast

Gast
ok, fragen kann man ja mal...

ich weiß nicht, wie die anweisung lautet, mit der man ein zwei zeichen innerhalb eines strings tauscht.
dies war ja der erdachte lösungsansatz...

wenn mir den jmd sagen könnte, also den befehl für char array (oder wie auch immer der ist), wäre ich rundum glücklich ;)
 

Leroy42

Top Contributor
Code:
	String tausche(String s, int i, int j) {
		char[] chars = s.toCharArray();
		char help = chars[i];
		chars[i] = chars[j];
		chars[j] = help;
		return new String(chars);
	}

Aber ich denke mal, das du das eigentlich gar nicht brauchst.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F String mit getText() auslesen und an Methode übergeben AWT, Swing, JavaFX & SWT 1
I DPI-Auflösungen von Druckern auslesen AWT, Swing, JavaFX & SWT 16
Z Swing Wert aus Textfeld auslesen -- null Fehler AWT, Swing, JavaFX & SWT 4
B Swing Posistion von JButton auslesen gibt immer 0 aus AWT, Swing, JavaFX & SWT 1
J JFram Location aus Konstruktor einer anderen Klasse auslesen AWT, Swing, JavaFX & SWT 10
it_is_all Swing Mehrere JComboBoxen - wie die versch. Boxen mit ItemStateChange auslesen? AWT, Swing, JavaFX & SWT 3
T Swing JTable auslesen und befüllen AWT, Swing, JavaFX & SWT 8
Soloeco Swing JTextField auslesen Klassen übergreifend AWT, Swing, JavaFX & SWT 16
M JavaFX - Array in View auslesen AWT, Swing, JavaFX & SWT 12
F Swing Spaltenbreite einer Column eines JTable auslesen AWT, Swing, JavaFX & SWT 5
B JavaFX Symbole aus Fonts auslesen AWT, Swing, JavaFX & SWT 1
sandaime Swing Thread für CMD auslesen AWT, Swing, JavaFX & SWT 16
G Werte aus dem GUI Auslesen AWT, Swing, JavaFX & SWT 8
3 JComboBox - Action - Auslesen & Umwandeln AWT, Swing, JavaFX & SWT 9
X Swing Per Button die Labels und Textfelder auslesen AWT, Swing, JavaFX & SWT 8
D JavaFX Dynamisch erzeugte Checkboxen aus VBox auslesen AWT, Swing, JavaFX & SWT 3
thobren JavaFX Inhalte aus dynamischen vbox mit TextArea auslesen AWT, Swing, JavaFX & SWT 9
F geänderten Textfeldinhalt mit parse auslesen AWT, Swing, JavaFX & SWT 1
T Swing NullPointerException beim auslesen von jTextField - Anfänger! AWT, Swing, JavaFX & SWT 3
M JavaFX Wert aus Tabellenzelle auslesen AWT, Swing, JavaFX & SWT 4
M Swing JFreechart X-Achse Tick auslesen AWT, Swing, JavaFX & SWT 13
T Swing jComboBox auslesen mit Datenbankanbindung AWT, Swing, JavaFX & SWT 3
P Swing JTable Werte auslesen bzw überschreiben AWT, Swing, JavaFX & SWT 5
O Swing Text aus Textfield auslesen AWT, Swing, JavaFX & SWT 8
T Swing "Textgröße" aus OS auslesen AWT, Swing, JavaFX & SWT 3
D Swing Farbe aus Pixel vom JFrame auslesen AWT, Swing, JavaFX & SWT 17
R Array aus einem Objekt auslesen AWT, Swing, JavaFX & SWT 4
F Swing jComboBox auslesen AWT, Swing, JavaFX & SWT 6
T SWT Table (mit Spinner Spalte) Daten auslesen AWT, Swing, JavaFX & SWT 4
R Int aus JSpinner auslesen und Tabelle erstellen AWT, Swing, JavaFX & SWT 3
X Gridbaglayout gridx + gridy auslesen? AWT, Swing, JavaFX & SWT 7
M JTextField gibt beim auslesen null aus AWT, Swing, JavaFX & SWT 9
L SWT Eingabefelder beim Schließen des Forms auslesen AWT, Swing, JavaFX & SWT 3
D Applet Auslesen von Images aus Ressourcen AWT, Swing, JavaFX & SWT 29
F icon aus exe auslesen mithilfe des JFilechooser ? AWT, Swing, JavaFX & SWT 4
F Textfelder auslesen AWT, Swing, JavaFX & SWT 12
T 3D-Grafik (Java3D) Aus einem Objekt einer Szene (Würfel, Ebene) die wichtigen Randkoordinaten auslesen AWT, Swing, JavaFX & SWT 3
P gleichanfangende Zeilen solange auslesen bis es die gibt AWT, Swing, JavaFX & SWT 12
J JTextField auslesen lassen AWT, Swing, JavaFX & SWT 4
C Swing TextField auslesen AWT, Swing, JavaFX & SWT 21
C TextFelder auslesen AWT, Swing, JavaFX & SWT 20
E Textfeld auslesen AWT, Swing, JavaFX & SWT 2
F SWT Tabelle Zeile auslesen AWT, Swing, JavaFX & SWT 3
M Position eines JLabels mit getX() auslesen AWT, Swing, JavaFX & SWT 2
D SWT CheckBox auslesen (Window Builder Pro) AWT, Swing, JavaFX & SWT 2
E Wert eines selektierten Knotens in einem JTree auslesen AWT, Swing, JavaFX & SWT 3
J Mausposition auslesen AWT, Swing, JavaFX & SWT 4
L Name des JLabels auslesen bei Mouseclick AWT, Swing, JavaFX & SWT 2
A Swing Slider-Value auslesen und weitergeben AWT, Swing, JavaFX & SWT 4
B Swing Betrag mit Komma aus jformattedtextfield auslesen. AWT, Swing, JavaFX & SWT 2
Y JSlider Wert auslesen (Kategorien) AWT, Swing, JavaFX & SWT 2
K Text vom JTextField auslesen AWT, Swing, JavaFX & SWT 9
E werte aus List auslesen AWT, Swing, JavaFX & SWT 2
R Textfield auslesen auf Anforderung AWT, Swing, JavaFX & SWT 4
M Zeitkritisches auslesen von Tastatureingaben AWT, Swing, JavaFX & SWT 6
M Swing JTextField "onthefly" auslesen und berechnen AWT, Swing, JavaFX & SWT 7
C Swing JPasswordField Password auslesen AWT, Swing, JavaFX & SWT 7
K 2D-Grafik Fehler beim Farbe auslesen AWT, Swing, JavaFX & SWT 3
K JTable Werte auslesen AWT, Swing, JavaFX & SWT 2
T JSpinner in JTable: Problem beim Auslesen, funktioniert erst beim Zellwechsel AWT, Swing, JavaFX & SWT 7
3 2D-Grafik Rechtecke auf Bilder legen und auslesen AWT, Swing, JavaFX & SWT 4
P Swing ComboBox(en) in JTable auslesen und ausgeben AWT, Swing, JavaFX & SWT 11
1 Textfeld auslesen AWT, Swing, JavaFX & SWT 11
R TextField auslesen & in Objekteigenschaften speichern AWT, Swing, JavaFX & SWT 22
J JSpinner + SpinnerNumberModel int auslesen AWT, Swing, JavaFX & SWT 2
S JPanel auslesen AWT, Swing, JavaFX & SWT 3
S JTextField auslesen AWT, Swing, JavaFX & SWT 2
M JTabbedPane - Tab auslesen AWT, Swing, JavaFX & SWT 2
M auslesen mehrerer JComboBoxen funktioniert nicht AWT, Swing, JavaFX & SWT 9
M Java swt link url auslesen AWT, Swing, JavaFX & SWT 5
T ComboBox auslesen AWT, Swing, JavaFX & SWT 11
Airwolf89 Swing Pfad mit "\" auslesen AWT, Swing, JavaFX & SWT 6
N jTable mit JComboBox auslesen AWT, Swing, JavaFX & SWT 6
P Swing Hintergrundfarbe auslesen und wieder setzen AWT, Swing, JavaFX & SWT 4
D SWT String aus Textfeld auslesen und in eine Tabelle speichern AWT, Swing, JavaFX & SWT 5
F checkboxen auslesen/ansprechen AWT, Swing, JavaFX & SWT 1
T SWT Canvas Koordinaten per MouseMove auslesen AWT, Swing, JavaFX & SWT 1
C Swing Mit jTree ein Ordneröffnen Dialog machen? Und Ordner Inhalt auslesen? AWT, Swing, JavaFX & SWT 4
S Bilder aus der Google Book Search API auslesen AWT, Swing, JavaFX & SWT 3
J Daten in JTable nach Sortierung auslesen AWT, Swing, JavaFX & SWT 2
S Swing noch nicht übergebenen Wert aus JComboBox auslesen AWT, Swing, JavaFX & SWT 4
JavaKaffee Array auslesen in jTextPane? AWT, Swing, JavaFX & SWT 9
A Auslesen eines JTextField AWT, Swing, JavaFX & SWT 3
M Comboboxen in JTable - Werte auslesen AWT, Swing, JavaFX & SWT 9
calzone Swing JTable/DefaultTableModel, rowData auslesen ? AWT, Swing, JavaFX & SWT 15
P List-Einträge auslesen AWT, Swing, JavaFX & SWT 4
D Inhalt einer JTable Celle auslesen AWT, Swing, JavaFX & SWT 3
N JFilechooser File auslesen AWT, Swing, JavaFX & SWT 10
T JTree auslesen AWT, Swing, JavaFX & SWT 4
K Textfelder auslesen gibt immer Fehler AWT, Swing, JavaFX & SWT 2
A Wert einer JComboBox auslesen AWT, Swing, JavaFX & SWT 1
M JPasswordfield.getpassword() char[] nicht codiert auslesen? AWT, Swing, JavaFX & SWT 2
S JAVA-Doc intern auslesen AWT, Swing, JavaFX & SWT 2
C jComboBox KeyListener -> Box auslesen AWT, Swing, JavaFX & SWT 3
G JTable Daten auslesen AWT, Swing, JavaFX & SWT 2
J Integer aus Textdatei auslesen und in Variable speichern AWT, Swing, JavaFX & SWT 11
A Problem mit JFormattedTextField auslesen AWT, Swing, JavaFX & SWT 11
O JTable auslesen AWT, Swing, JavaFX & SWT 2
T Pixelfarbe auslesen AWT, Swing, JavaFX & SWT 4
M Auslesen veränderter Daten in einer jTable AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben