• Wir präsentieren Dir heute ein Stellenangebot für einen Frontend-Entwickler Angular / Java in Braunschweig. Hier geht es zur Jobanzeige

Automat programmieren

TimoN11

TimoN11

Mitglied
Hey,
Dieser Automat soll programmiert werden:
1612702806421.png


Nun zu meiner Frage:
Ich habe für ein Knoten eine Klasse Node erstellt, darin sind die Instanzvariablen Node up & Node down. Up und Down sollen jeweils auf den nächsten Knoten referenziert sein. Wie kann man das anstellen bzw. kann mir jemand einen Denkanstoß geben?

Grüße,
 
kneitzel

kneitzel

Top Contributor
Nur rein die Knoten willst Du abbilden?
Dann kannst Du einfach hin gehen und die Knoten wie beschrieben implementieren, d.h. Du hast etwas wie

Java:
public class Node {
    Node up;
    Node down;
    String value;
    // Getter / Setter
}

Und dann kannst Du erst einmal die Nodes alle erzeugen. Dazu irgendwelche Variablennamen überlegen (also z.B. node1, node2, node3, ...)
Dann kannst Du erst die Nodes alle erzeugen und dann up/down setzen also z.b. node1.setUp(node2); und so.

Dann hättest Du die Abbildung abgebildet.
 
TimoN11

TimoN11

Mitglied
Danke für deine Hilfe!
Wie kann ich das am besten machen?
Da man ja für die Deklaration die Up und Down benötigt, und um die zu erstellen braucht man wiederum die Down/Up Nodes
Müsste ja z.B. für Startknoten -> Node Knoten0 = new Node(value, up, down) sein.
Wenn ich dann z.B.

Java:
     Node Knoten0 = new Node(0, Knoten21,Knoten11);
    Node Knoten11 = new Node(0,Knoten21,Knoten12);
    Node Knoten12 = new Node(0,Knoten21,Knoten13);
    Node Knoten13 = new Node(0,Knoten14,Knoten13);
    Node Knoten14 = new Node(1,Knoten22,Knoten11);
    Node Knoten21 = new Node(0,Knoten22,Knoten11);
    Node Knoten22 = new Node(0,Knoten23,Knoten11);
    Node Knoten23 = new Node(0,Knoten23,Knoten24);
    Node Knoten24 = new Node(2,Knoten21,Knoten12);

Das geht ja nicht weil die Up/Down Nodes nicht erstellt wurden.
 
kneitzel

kneitzel

Top Contributor
Du kannst die Knoten nicht immer im Konstruktor angeben. Beim ersten Knoten hast Du die folgenden ja noch nicht. Also beim Konstruktor entweder erst null mitgeben oder eben einen Konstruktor anbieten ohne die Parameter (bevorzugter Weg).

Und dann mittels Setter die Knoten in up und down setzen, so wie ich es angedeutet hatte im Text:
node1.setUp(node2);
 
mihe7

mihe7

Top Contributor
Mal ein alternative Vorschlag (Skizze):

Java:
class Edge {
    public final String label;
    public final Node target;

    public Edge(String label, Node target) {
        this.label = label;
        this.target = target;
    }
}

class Node {
    public final String label;
    private List<Edge> edges = new ArrayList<>();

    public Node(String label) { this.label = label; }

    public void add(Edge edge) {
        edges.add(edge);
    }
}

Java:
private Node[] createNodes(String ... nodeLabels) {
    Node[] nodes = new Node[nodeLabels.length];
    for (int i = 0; i < nodeLabels.length; i++) {
        nodes[i] = new Node(nodeLabels[i]);
    }
    return nodes;
}


Node[] nodes = createNodes("start",
        "none", "none", "none", "buy",
        "none", "none", "none", "sell");

nodes[0].add(new Edge("down", nodes[1]));
nodes[0].add(new Edge("up", nodes[5]));
...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Deterministischer endlicher Automat (DEA) Java Basics - Anfänger-Themen 26
O Unterschied Baum <-> Automat Java Basics - Anfänger-Themen 2
X Endlicher Automat arrays Java Basics - Anfänger-Themen 13
S Spiel automat -Bilder vergleichen Java Basics - Anfänger-Themen 3
G Schoko Automat Java Basics - Anfänger-Themen 8
L Zahlenspiel programmieren Java Basics - Anfänger-Themen 1
G Erste Schritte Array Mittelwert Methode Programmieren Java Basics - Anfänger-Themen 5
ehmo würfelspiel programmieren anfänger Java Basics - Anfänger-Themen 1
N Ufospiel programmieren Java Basics - Anfänger-Themen 13
KogoroMori21 Vorbereitung auf die Programmieren Klausur vom ersten Semester Java Basics - Anfänger-Themen 4
Drinkerbell Erste Schritte Zu blöd zum Programmieren? Java Basics - Anfänger-Themen 9
G Stack programmieren Java Basics - Anfänger-Themen 6
I Brauche Hilfe bei Objektorientiertem programmieren Java Basics - Anfänger-Themen 23
T Auf einem Schachbrett bewegen programmieren Java Basics - Anfänger-Themen 2
G Bruchrechner programmieren Java Basics - Anfänger-Themen 6
G Ufo Spiel programmieren Java Basics - Anfänger-Themen 13
D Schachbrett (8x8) programmieren Java Basics - Anfänger-Themen 3
J Spiel programmieren Java Basics - Anfänger-Themen 16
J Hilfe beim Programmieren Java Basics - Anfänger-Themen 5
S Kreisberechnung3 Buch: Programmieren lernen mit Java von Hans-Peter Habelitz Java Basics - Anfänger-Themen 39
M Quiz in Java programmieren mit Array Java Basics - Anfänger-Themen 8
S Spiel-Programmieren. Wenn ein Objekt den anderen berührt. Java Basics - Anfänger-Themen 6
K Java programmieren Java Basics - Anfänger-Themen 6
V_Fynn03 Kontrolle des Quelltextes (Bank programmieren)(GUI) Java Basics - Anfänger-Themen 6
D Was tun gegen zu komplzierten Denken beim Programmieren Java Basics - Anfänger-Themen 27
V_Fynn03 Bruchrechner programmieren (2 Klassen) Java Basics - Anfänger-Themen 9
N Ticketautomat programmieren Java Basics - Anfänger-Themen 63
M Rechner programmieren Java Basics - Anfänger-Themen 3
V_Fynn03 Java Bruchrechner programmieren Java Basics - Anfänger-Themen 13
J Java Suchfunktion Programmieren Java Basics - Anfänger-Themen 1
L Erste Schritte Bin ich "zu dumm" oder nicht geeignet zum Programmieren? Java Basics - Anfänger-Themen 3
U Ist jemad gut in programmieren (JAVA) und kann mir helfen? Java Basics - Anfänger-Themen 1
H Uhr programmieren Java Basics - Anfänger-Themen 10
T Schalter programmieren Java Basics - Anfänger-Themen 17
S Ampel Programmieren Java Basics - Anfänger-Themen 5
P Erste Schritte Probleme mit dem Programmieren Java Basics - Anfänger-Themen 12
D Richtig für Programmieren an der UNI lernen Java Basics - Anfänger-Themen 8
B Folgende Abfrage dynamisch programmieren? Java Basics - Anfänger-Themen 8
D Beim Programmieren auf die Logisch einfache Lösung kommen. Java Basics - Anfänger-Themen 17
B UML Klassen Diagramm zu Java Code Programmieren und ausführen Java Basics - Anfänger-Themen 21
steven789hjk543 Kann man mit Java und Eclipse einen Virus programmieren? Java Basics - Anfänger-Themen 13
S Spiel programmieren mit Java Java Basics - Anfänger-Themen 11
A Kalender programmieren, ich finde meinen Fehler nicht. Java Basics - Anfänger-Themen 9
S Erste Schritte Hilfe beim lernen von Programmieren Java Basics - Anfänger-Themen 2
V Zeichenkette programmieren Java Basics - Anfänger-Themen 20
O Fenster programmieren Java Basics - Anfänger-Themen 2
R Uebersichtlicher bzw. besser Programmieren Java Basics - Anfänger-Themen 13
N Dynamisches Programmieren/Fibonacci Java Basics - Anfänger-Themen 1
B Spielfiguren für ein Beute-Jägerspiel programmieren Java Basics - Anfänger-Themen 12
A Programmieren lernen Java Basics - Anfänger-Themen 28
F ArrayListe manuell programmieren? Java Basics - Anfänger-Themen 24
X Erste Schritte Einstieg ins Programmieren Java Java Basics - Anfänger-Themen 2
O Erste Schritte ln(1+x) Reihe Programmieren Java Basics - Anfänger-Themen 6
Ellachen55 Weihnachtsbaum in Eclipse programmieren Java Basics - Anfänger-Themen 6
L Klassen Geldrückgabe - Aufgabe Programmieren Java Basics - Anfänger-Themen 23
H Stern Dreieck (Buch: Grundkurs Programmieren) Java Basics - Anfänger-Themen 2
V Variablen Vorkommen programmieren Java Basics - Anfänger-Themen 18
S Dreieckssignal programmieren Java Basics - Anfänger-Themen 5
K Fehler beim Programmieren von TicTacToe Java Basics - Anfänger-Themen 12
M Spiel programmieren Java Basics - Anfänger-Themen 16
A Fenster programmieren Java Basics - Anfänger-Themen 1
V OOP Kassensystem objektorientiert programmieren Java Basics - Anfänger-Themen 15
A Erste Schritte DoodleJump programmieren: Kollisionsabfrage Java Basics - Anfänger-Themen 4
CT9288 Kleine Simulation programmieren, denkanstöße erbeten Java Basics - Anfänger-Themen 19
H Welche IDE zum Buch "Programmieren mit Java" von Reinhard Schiedermeier des Verlags Pearson Studium Java Basics - Anfänger-Themen 19
D Könnt ihr mir helfen beim Programmieren eines Ping Pong Spieles? Java Basics - Anfänger-Themen 9
M Rekursive Methode Programmieren Java Basics - Anfänger-Themen 3
I Spielbrett programmieren: Datenstruktur Java Basics - Anfänger-Themen 3
G Rekursives Programmieren --> harmonische Reihe Java Basics - Anfänger-Themen 3
A Endlich anfangen mit Programmieren ! Java Basics - Anfänger-Themen 8
L Karawane programmieren Java Basics - Anfänger-Themen 0
kokojamboo92 Spiel programmieren Java Basics - Anfänger-Themen 1
E Mastermind programmieren, wie den falschen Platz aber richtige Farbe schecken? Java Basics - Anfänger-Themen 23
steven789hjk543 Erste Schritte java programmieren/ Schritt für Schritt Java Basics - Anfänger-Themen 14
I Spiel programmieren. Java Basics - Anfänger-Themen 16
H [Studium] Mäxchenspiel programmieren Java Basics - Anfänger-Themen 10
C BlueJ Zahlenschloss programmieren Java Basics - Anfänger-Themen 5
steven789hjk543 mit dem Smartphone java programmieren Java Basics - Anfänger-Themen 44
F Okjektorientiert programmieren Java Basics - Anfänger-Themen 2
S OOP Ticketsystem programmieren Java Basics - Anfänger-Themen 6
P Selber Programmieren lernen oder Uni? Java Basics - Anfänger-Themen 12
P Kasse programmieren Java Basics - Anfänger-Themen 12
D Timer programmieren Java Basics - Anfänger-Themen 13
M Erste Schritte Einfache Aufzugssteuerung programmieren - Anfänger Java Basics - Anfänger-Themen 2
kilopack15 Entwicklungsumgebung für Haskell programmieren Java Basics - Anfänger-Themen 3
D For Schleife Programmieren Java Basics - Anfänger-Themen 31
M Java Taschenrechner Programmieren Java Basics - Anfänger-Themen 12
K Kreuzworträtsel programmieren Java Basics - Anfänger-Themen 1
H Weihnachtslieder programmieren Java Basics - Anfänger-Themen 3
S Schach Frontend programmieren Java Basics - Anfänger-Themen 2
V Zahlenrätsel programmieren Java Basics - Anfänger-Themen 16
S Hinweis zu Fehler im Kalender-Code - Aufgabe 5.3 aus Grundkurs Programmieren in Java 7. Auflage Java Basics - Anfänger-Themen 4
A Taschenrechner programmieren Java Basics - Anfänger-Themen 21
K Kleines Spiel auf Java programmieren Java Basics - Anfänger-Themen 2
C ZahlenMuster programmieren Java Basics - Anfänger-Themen 7
C Muster programmieren Java Basics - Anfänger-Themen 4
C Muster programmieren Java Basics - Anfänger-Themen 4
S Operatoren Modulo programmieren Java Basics - Anfänger-Themen 10
K Motivation fürs Programmieren Java Basics - Anfänger-Themen 10
C Buchstabe "K" im zweidimensionalen Array programmieren Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Anzeige

Neue Themen


Oben