Chunche95

La notación BNF es la siguiente:

  • ::= Indica que el elemento a su izquierda puede desarrollarse según el esquema de la derecha.
  • | Indica que puede elegirse uno y sólo uno de los elementos separados por este metasímbolo.
  • {} Indica que los elementos incluidos dentro de ellos se pueden repetir cero o más veces.
  • [] Indica que los elementos incluidos pueden ser utilizados o no.
  • () Agrupa los elementos incluidos en su interior.
42.- Los metasímbolos son:
  1. a- Elementos de la notación BNF
  2. b- Elementos de la programación lógica
  3. c- Elementos de la programación funcional
  4. d- Parte del modelo de flujo de datos
En la definición de notación BNF encontramos: estas reglas de cómo han de escribirse los elementos del lenguaje en forma de símbolos utilizan a su vez otros símbolos, que se denominan metasímbolos. Por lo tanto la respuesta correcta es la A.
68.- Marque la expresión válida según la gramática.
A::= B[C][D]
B::=E{E}
C::=eB
D::=(f|g)B
E::=a|b|c
  1. a- bbaeaac
  2. b- eabcabc
  3. c- fababcc
  4. d- abgaeab
Si vamos desarrollando, vemos que A es obligatoriamente un B, seguido opcionalmente de un C, seguido opcionalmente de un D. Como B es una serie de uno o varios E, y E es un 'a','b' o 'c', toda la secuencia válida comienza por un conjunto de 'a','b','c'. Lo que descarta B) y C). Tras la secuencia B, en C usamos una letra 'e', seguida de una B, que es una serie de E, que son letras 'a', 'b' o 'c', por lo que descartamos D), al seguir una 'g' a la 'ab'.
72.- Dada la siguiente gramática BNF:
Y::= xA
A::={z}|pA
¿Qué cadenas son generadas por la misma?
  1. a) xppzz y xxppzz
  2. b) xppx y xzzx
  3. c) xpz y xzp
  4. d) xppzz y xpppz
La opción a) es incorrecta ya que la segunda no cumple con las condiciones al tener dos xx.
La opción b) es incorrecta ya que la segunda no es posible al tener una x al final.
La opción c) es incorrecta ya que la xzp no es posible formarla ya que no se acabaría ahí al tenerse que empezar otra A.
La opción d) es la correcta, ya que se llamaría cuatro veces a A para formar: 1ºp,2ºp,3ºp y 4ºz, como es lógico la primera es x en ambos casos.
130.- Dadas las siguientes reglas de producción:
Letra::={a|b}
Numero::={1|2}
Cadena::=[Letra|Numero]
Cadenas correctas del lenguaje generado por esta gramática serán:
  1. a- aab y 121
  2. b- a1 y b1
  3. c- 2aa y b22
  4. d- ab12 y bb22
La regla de la Cadena dice que debe de ser opcionalmente o una Letra o un Numero, por tantom quedan eliminadas ya todas las respuestas en las que se mezclen los dos tipos como son la 'b','c' y 'd'.
La a) es correcta ya que la regla de Letra dice que se puede repetir tantas veces la 'a' o la 'b' como se quiera, y la de Numero lo mismo pero con 1 ó 2.
152.- Cuál de las siguientes notaciones BNF generará la cadena 'ab'.
  1. a) {a}|{b}
  2. b) [a]|[b]
  3. c) {b}|{a}
  4. d) {a|b}
Claramente es la D ya que en la opción a) no podemos sólo podemos repetir o la 'a' o la 'b' pero no puede haber 'a' y 'b' mezcladas, como ocurre en la c), la b) implica que tiene que haber o 'a' o 'b', pero pasa lo mismo que en las opciones a) y c). La opción d) dice que se puede repetir varias veces a o b como ocurre con ab.