diff --git a/src/mt/Automata.java b/src/mt/Automata.java new file mode 100644 index 0000000..ed610ab --- /dev/null +++ b/src/mt/Automata.java @@ -0,0 +1,98 @@ +package mt; + +import org.w3c.dom.Document; + +import java.util.ArrayList; + +class Enlace{ + char si; + char sj; + char movimiento; + Estado qj; + + public Enlace(char si,Estado qj,char sj, char move){ + setMovimiento(move); + setSj(sj); + setQj(qj); + setSi(si); + } + + private void setSi(char si){ + this.si = si; + } + + private void setSj(char sj){ + this.sj = sj; + } + + private void setMovimiento(char movimiento){ + this.movimiento = movimiento; + } + + private void setQj(Estado qj){ + this.qj = qj; + } + + @Override + public String toString(){ + return ","+si+") = (q"+qj.q+","+sj+","+movimiento+")"; + } +} + +class Estado{ + int q; + ArrayList link; + + public Estado(int q) { + this.q = q; + link = new ArrayList(); + } + + public boolean createLink(char si,Estado qj,char sj, char move){ + if(link.isEmpty()) link.add(new Enlace(si,qj,sj,move)); + for(int i=0;i estados; + public Automata(Document document){ + estados = new ArrayList(); + Estado aux; + for(int i=0;i + + + + 0 + 0 + 1 + X + R + + + 1 + 0 + 1 + 0 + R + + + 1 + Y + 1 + Y + R + + + 1 + 1 + 2 + Y + R + + + 2 + X + 0 + X + R + + + 2 + 0 + 2 + 0 + L + + + 2 + # + 3 + # + L + + + 2 + 1 + 2 + 1 + L + + + 2 + Y + 2 + Y + L + + + 3 + Y + 3 + Y + L + + + 3 + X + 4 + X + L + + + 4 + X + 4 + X + L + + + 4 + # + 5 + # + R + +