
Gramatica en java
Publicado por Jesus Alberto (1 intervención) el 07/06/2017 21:10:41
Hola Programadores necesito colaboracion con un problema de gramatica
apartir de una regla de producion ya sea
P=S->ABC,A->a, B->AB, B->{}vacio, A->a, B->c, C->a
toda esa gramatica la coje una text area pero como hago para cojer cada letra y generar la gramatica dada
esta es la implementacion que he hecho hasta el momento
apartir de una regla de producion ya sea
P=S->ABC,A->a, B->AB, B->{}vacio, A->a, B->c, C->a
toda esa gramatica la coje una text area pero como hago para cojer cada letra y generar la gramatica dada
esta es la implementacion que he hecho hasta el momento
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
char Cadena[];
String cadena="";
String[] CadenaP;
String producido="";
String Producionp="";
char[] minproducido= {' '};
char[] Secuenciaprod={' '};
CadenaP=p.split(",");
for (int i=0; i<CadenaP.length;i++){
cadena +=CadenaP[i];
}
minproducido=cadena.toCharArray();
for (int j=0; j<minproducido.length;j++){
if (minproducido[j]!='>'&&minproducido[j]!='-')
if (minproducido[j]>='A'&& minproducido[j]<='Z'){
Producionp+= minproducido[j];
Secuenciaprod=Producionp.toCharArray();
} }
for (int l=0; l<=minproducido.length; l++){
for (int r=0; r<Secuenciaprod.length; r++){
if (minproducido[l]!='>' &&minproducido[l]!='-'){
if (minproducido[l]<'A'&& minproducido[l]>'Z'){
if (Secuenciaprod[r-1]==Secuenciaprod[r]){
producido+= minproducido[l];
}
}
}
}
System.out.print(producido);
Valora esta pregunta


0