Donar $20 Donar $50 Donar $100 Donar mensualmente
 


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Autor Mensaje
niko93_15 Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 156
Agradecimientos dados: 3
Agradecimientos: 3 en 3 posts
Registro en: Jan 2011
Mensaje: #1
PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016 Finales Sintaxis y Semántica de los Lenguajes
Buenas noches,

Les escribo para pedirles si alguno fue a rendir hoy el final tomado en el dia de la fecha de Sintaxis. Dieron los 15 mins para levantarse?

Saludos!
05-12-2016 23:37
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
JPfx Sin conexión
Empleado del buffet
Menos estado que Palestina
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 20
Agradecimientos dados: 18
Agradecimientos: 8 en 4 posts
Registro en: Jul 2014
Mensaje: #2
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Dieron los 15 minutos y después retiraron las libretas.
Seguro en estos días aparece la resolución oficial, te dejo mas o menos lo que me acuerdo...

Había un anexo con una gramática para sentencias, y para los tres prácticos había que usarla.

- Hallar el conjunto Primero(sentencia).
- Derivar if (e) if (e) e; else e; Indicar si es sintacticamente correcto y si la gramática tiene ambigüedades.
- Escribir una sentencia de iteración con 7 tokens.

Afirmaciones

1. La verificación de tipos la realiza siempre el análisis semántico.
2. En ANSI C la expresión a+++++b tiene 5 tokens.
3. En ANSI C sea int a,b; la expresión a+++++b es semánticamente correcta.
4. En ANSI C el lexema "/*xx/" tiene al menos un error léxico.
5. En ANSI C char x[] = {'a','b','\0'}; y char*x = "ab"; son semánticamente equivalentes.
6. El analizador léxico toma tokens para generar lexemas.
7. Todo LF puede ser generado por una gramática.

Me saque un 7. Me quedaron algunas dudas en las afirmaciones, si no aparece la resolución lo vamos comentando.
06-12-2016 10:17
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
manudae Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3
Agradecimientos dados: 6
Agradecimientos: 1 en 1 posts
Registro en: Dec 2014
Mensaje: #3
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Aca van las respuestas. Hice todas bien, pero me quedo sin responder la 5. Cualquier duda, la aclaramos.

1. V
2. V
3. F
4. F
5. -
6. F
7. V
06-12-2016 11:17
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Omnipresent Sin conexión
Campeon del cubo Rubik
The Winter is gone
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 152
Agradecimientos dados: 41
Agradecimientos: 45 en 38 posts
Registro en: Sep 2014
Mensaje: #4
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Me quedé para ver la corrección y me dijeron que la 5 era falsa.
06-12-2016 13:04
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Bruno Sin conexión
Empleado de Fotocopiadora

**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 32
Agradecimientos dados: 14
Agradecimientos: 11 en 5 posts
Registro en: Sep 2011
Mensaje: #5
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
(06-12-2016 13:04)Omnipresent escribió:  Me quedé para ver la corrección y me dijeron que la 5 era falsa.

¿Por qué Falsa?
Escribo las 2 expresiones, compila y me da la misma salida:

http://ideone.com/mGJWZP

http://ideone.com/xJJpqJ

si da la misma salida ¿no son equivalentes?
06-12-2016 14:27
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Omnipresent Sin conexión
Campeon del cubo Rubik
The Winter is gone
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 152
Agradecimientos dados: 41
Agradecimientos: 45 en 38 posts
Registro en: Sep 2014
Mensaje: #6
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Bruno

Me explicaron rápidamente el porqué y no entendí mucho pero básicamente me dijeron que uno es un array y otro es un puntero y que aunque en la práctica se trabaja casi de la misma manera con ambos, son distintos semánticamente. Acá: http://c.conclase.net/curso/?cap=012b
Dice que hay 2 diferencias entre array y puntero:
*Que el identificador de un array se comporta como un puntero constante, es decir, no podemos hacer que apunte a otra dirección de memoria.
*Que el compilador asocia, de forma automática, una zona de memoria para los elementos del array, cosa que no hace para los elementos apuntados por un puntero corriente.

Supongo que será por eso. Para mi es un VoF de mierda ese punto :/
(Este mensaje fue modificado por última vez en: 06-12-2016 17:38 por Omnipresent.)
06-12-2016 17:36
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Omnipresent recibio 2 Gracias por este post
Bruno (06-12-2016), manudae (07-12-2016)
JPfx Sin conexión
Empleado del buffet
Menos estado que Palestina
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 20
Agradecimientos dados: 18
Agradecimientos: 8 en 4 posts
Registro en: Jul 2014
Mensaje: #7
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Justamente una de las afirmaciones que me quedo en duda fue la 5.
Estuve un buen rato pensandolá hasta que al final me la jugué por Verdadero ya que en la practica
es lo mismo laburar con una u otra.
Ahora veo que si al compañero le dijeron que era falsa me restó un punto.

Pensandolo bien es Falsa ya que para el análisis semántico char[] y char* son dos tipos de datos distintos,
y justamente esta etapa es donde se chequean los tipos. Alguien que la tenga mas clara podrá hacer su aporte..

La otra fue la 3 donde preguntan por a++++b, esa no la respondí. En un momento pensé que era Falsa por no estar
inicializadas las variables pero no me la quise jugar.
06-12-2016 17:40
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] JPfx recibio 1 Gracias por este post
Bruno (06-12-2016)
15406644 Sin conexión
Campeon del cubo Rubik
nil
****

Ing. Naval
Centro de Estudios Mar del Plata

Mensajes: 143
Agradecimientos dados: 42
Agradecimientos: 52 en 24 posts
Registro en: Jun 2012
Mensaje: #8
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Si les sirve, uno de los profe me dijo que los vf ya son una tendencia, osea, van a tratar de tomar c y las cosas q vienen tomando; los prácticos son "volatiles" refiriéndose a que son azarosos
(Este mensaje fue modificado por última vez en: 07-12-2016 20:50 por 15406644.)
06-12-2016 18:10
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CarooLina Sin conexión
Colaborador
❥❥❥❥
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3.640
Agradecimientos dados: 1.216
Agradecimientos: 1.410 en 511 posts
Registro en: Sep 2010
Mensaje: #9
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
La 5 la explica el libro de C, lo que pasa es que uno es un vector y el otro es un puntero a "..". Si vos al vector lo queres cambiar podes, al puntero si vos le queres cambiar el contenido es un resultado indefinido. Por eso...no es lo mismo!

Los anexos eran las Bnf de C que pueden encontrarla en el pdf de bruno "sintaxis c"
Estaba la de iteracion y seleccion. La de iteracion tenia una opcion mas para for
La cosa con el conjunto primero, es que primero habia que pasar esa GIC a Gic LL(1) y dps hacerle el conjunto primero que era basicamente switch, for, if, do,while . Yo explique en el final que la GIC dada no era LL1 ( y el conjunto primero, como ya sabemos, son los noterminales que pueden ser el simbolo de preanalisis para saber por dodne expandirse) Por que tenias dos posibilidades para el IF y el FOR... entonces por donde empieza si son iguales? por eso es que habia que hacer eso! Entonces use las dos reglas (va solo la de factor comun) y lo cambie. La parte del IF era igual a la del libro pero la de for, la saque ahi!... como factor comun use "for ( " por que dps de eso ya no era comun.
Te podias confundir con la bnf por que era otra anotacion, pero algo que siempre es claro que los noterminales siempre estan por lo menos una vez del lado izquierdo... un terminal jamas puede estar del lado izquierdo.
Lo de ambigua lo pueden encontrar en el volumen dos, por que para una misma expresion/sentencia tenes dos formas de derivarlo. Primero lo derive con if (exp) sent y dps con if (exp) sent else sent y con ambas llegas al mismo resultado, reemplazando convenientemente.

Y el de los tokens mi respuesta fue " for ( ; ; ) e ; " (pongo las comillas solo aca) ahi se ven los 7 tokens. Puede coincidir con ansi c, pero traqnuilamente pueden inventar la gramatica =)

love
(Este mensaje fue modificado por última vez en: 07-12-2016 09:54 por CarooLina.)
06-12-2016 20:48
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] CarooLina recibio 2 Gracias por este post
Bruno (06-12-2016), manudae (07-12-2016)
damianvc31 Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 49
Agradecimientos dados: 15
Agradecimientos: 22 en 16 posts
Registro en: Mar 2016
Mensaje: #10
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
(06-12-2016 17:40)JPfx escribió:  Justamente una de las afirmaciones que me quedo en duda fue la 5.
Estuve un buen rato pensandolá hasta que al final me la jugué por Verdadero ya que en la practica
es lo mismo laburar con una u otra.
Ahora veo que si al compañero le dijeron que era falsa me restó un punto.

Pensandolo bien es Falsa ya que para el análisis semántico char[] y char* son dos tipos de datos distintos,
y justamente esta etapa es donde se chequean los tipos. Alguien que la tenga mas clara podrá hacer su aporte..

La otra fue la 3 donde preguntan por a++++b, esa no la respondí. En un momento pensé que era Falsa por no estar
inicializadas las variables pero no me la quise jugar.

La verdad yo aprendí C hace bastante y no sabía que se podía inicializar el contenido de un puntero así:

char * x = "ab";

Para eso justamente usaba los arrays, char x[]= "ab";

Ambas funcionan, la diferencia como dijo Omnipresent es que el primero podes cambiar donde apunta x después, mientras que en el 2do es constante. Supongo que por eso es falso, aunque ambos reservan 3 lugares de memoria para guardar 'a', 'b' y '\0'. No creo que sea falso por usar "ab" o {'a','b','\0'}, eso es notación nada más pero significa lo mismo a la hora de inicializar.

Con respecto al 3, es falsa porque no se puede incrementar el incremento digamos. Sería como hacer:
a + 1 = a + 1, no cumple con que el lvalue sea una variable y no una expresión.
Podes hacer a+++b que vendría a ser a++ + b, que suma a + b y devuelve el resultado y luego incrementa a.

Sobre el final tengo una consulta para el que sepa, yo voy a darlo la semana que viene seguramente, de autómatas suelen tomar algo?
Yo curse con Barca y en el primer parcial tomo 2 de autómatas, y en el 2do 3. Osea todo lo que no era C, era autómatas. Ahora veo que casi ni le dan bola a eso en el final.
07-12-2016 16:52
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] damianvc31 recibio 1 Gracias por este post
JPfx (07-12-2016)
JPfx Sin conexión
Empleado del buffet
Menos estado que Palestina
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 20
Agradecimientos dados: 18
Agradecimientos: 8 en 4 posts
Registro en: Jul 2014
Mensaje: #11
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Hola damianvc31, soy Juan Pablo. Cursamos juntos.
Curiosamente en este final ni mencionaron autómatas, pero de los finales que vi siempre toman algo.

Excelente la justificación de la afirmación 3, es falsa sin dudas.

Dejo mis respuestas...

Practica
Usando la gramática para sentencias de ANSI C que describió CarooLina

1. Primero(sentencia) = {if, switch, do, while, for}
Era solo utilizando la parte de A del anexo que hacia referencia a sentencia-condición y sentencia-iteración.

2. Era valida y la gramática era ambigua, ya que había dos producción para if y for.

3. for ( ; ; ) e;
Sentencia de iteracion con 7 tokens.


Afirmaciones

1. V
2. V - Los 5 tokens son {a, ++, ++, +, b}
3. -
4. F - Es un literal cadena perfectamente valido.
5. V - Pise el palito es F como ya se aclaro...
6. F - Es al revés el scanner toma lexemas para generar tokens.
7. V - Según la jerarquía de Chomsky cada LF tiene su gramática que lo genera.
07-12-2016 17:40
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CarooLina Sin conexión
Colaborador
❥❥❥❥
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3.640
Agradecimientos dados: 1.216
Agradecimientos: 1.410 en 511 posts
Registro en: Sep 2010
Mensaje: #12
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Que sea ambigua no implica que haya dos de if y for, por que citando el ejemplo del libro...

E => E + E
E => num

num + num + num tiene dos derivaciones, es ambigua y es asi de simple. La de if es ambigua por que lo probe para justificar pero la de for no me acuerdo bien la segunda para asegurarlo. Que se repita lo unico que te da indicio que no es GIC LL(1) y nada mas.

6) Igual yo puse F por que al scanner le entran caracteres y le salen tokens. No le entran lexemas

love
07-12-2016 17:56
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] CarooLina recibio 1 Gracias por este post
JPfx (07-12-2016)
damianvc31 Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 49
Agradecimientos dados: 15
Agradecimientos: 22 en 16 posts
Registro en: Mar 2016
Mensaje: #13
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
(07-12-2016 17:40)JPfx escribió:  Hola damianvc31, soy Juan Pablo. Cursamos juntos.
Curiosamente en este final ni mencionaron autómatas, pero de los finales que vi siempre toman algo.

Excelente la justificación de la afirmación 3, es falsa sin dudas.

Dejo mis respuestas...

Practica
Usando la gramática para sentencias de ANSI C que describió CarooLina

1. Primero(sentencia) = {if, switch, do, while, for}
Era solo utilizando la parte de A del anexo que hacia referencia a sentencia-condición y sentencia-iteración.

2. Era valida y la gramática era ambigua, ya que había dos producción para if y for.

3. for ( ; ; ) e;
Sentencia de iteracion con 7 tokens.


Afirmaciones

1. V
2. V - Los 5 tokens son {a, ++, ++, +, b}
3. -
4. F - Es un literal cadena perfectamente valido.
5. V - Pise el palito es F como ya se aclaro...
6. F - Es al revés el scanner toma lexemas para generar tokens.
7. V - Según la jerarquía de Chomsky cada LF tiene su gramática que lo genera.

Ahhh que haces che? xD

Ojala tomen algo de automatas porque lo otro ni lo practicamos. Igual si toma como este vengo bien porque hay mucho C.
07-12-2016 18:07
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
15406644 Sin conexión
Campeon del cubo Rubik
nil
****

Ing. Naval
Centro de Estudios Mar del Plata

Mensajes: 143
Agradecimientos dados: 42
Agradecimientos: 52 en 24 posts
Registro en: Jun 2012
Mensaje: #14
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
en la practica hay 2 opciones, como hicieron en los finales de mitad de año, toman parecido; o que tomen diferente y seguramente tomen automatas.
respecto a los VF segun un profe van a tomar C.
esperemos que sea como el final del 11/07 y 25/07 del 2016
07-12-2016 20:57
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
niko93_15 Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 156
Agradecimientos dados: 3
Agradecimientos: 3 en 3 posts
Registro en: Jan 2011
Mensaje: #15
RE: PEDIDO - Final Sintaxis y Semantica de los Lenguajes 5/12/2016
Estoy preparando el final para el Lunes. Veo que es mucho de Ansi C. De donde recomiendan que deberia estudiar eso?
08-12-2016 21:15
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)



    This forum uses Lukasz Tkacz MyBB addons.