Classe Testa_Gramatica
package cd02;
public class Testa_Gramatica {
public static void main(String[] args) {
char[] vn = new char[4];
vn[0] = 'S';
vn[1] = 'A';
vn[2] = 'B';
vn[3] = 'C';
char[] vt = new char[2];
vt[0] = 'a';
vt[1] = 'b';
String[] p = new String[12];
p[0] = new String("(S,bA)");
p[1] = new String("(S,aB)");
p[2] = new String("(S,b)");
p[3] = new String("(S,'')"); // epsolon seria o caracter vazio
p[4] = new String("(A,aB)");
p[5] = new String("(A,bA)");
p[6] = new String("(A,b)");
p[7] = new String("(B,bB)");
p[8] = new String("(B,aC)");
p[9] = new String("(C,bC)");
p[10] = new String("(C,aA)");
p[11] = new String("(C,a)");
char s = 'S';
GramaticaRegular umaGramatica = new GramaticaRegular(vn,vt,p,s);
assert (umaGramatica.ehRegular()) : "A gramática em questão não é regular";
}
}
Classe Gramatica-Regular
package cd02;
public class GramaticaRegular {
public GramaticaRegular(char[] vn,char[] vt,String[] p,char s) {
}
public boolean ehRegular() {
return true;
}
}