Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[SINTAXIS] [PEDIDO] Final 12/12/2011
Autor Mensaje
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #16
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
AFDR debe referirse a un automata que utiliza analisis descendente recursivo.

Recuerden que el parser puede utilizar analisis ascendente o descendente recursivo, y es una GIC, osea que un AFD lo debe reconocer..


De cualquier manera, tanto en AFDR, AFPND (no en AFPND), se pueden hacer transiciones sin meter simbolos en la pila: la transicion e (epsilon) no mete ningun simbolo.

Cita:como hicieron con el "módulo semántico" en una ocasión.

esa la hicieron porque en una parte del libro dice, claramente "existen rutinas de analisis semantico, pero no existe ningun modulo de analisis semantico"

[Imagen: v34BEFt.gif]
16-12-2011 10:36
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
tenchology Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 104
Agradecimientos dados: 14
Agradecimientos: 26 en 8 posts
Registro en: Dec 2008
Mensaje: #17
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
puede ser que en el ejercicio 3 (el de los errores de la funcion) falte poner que en la linea 3 hay un error semantico porque el identificador "b" no esta definido? (cuando hace a < b en el for)
16-12-2011 10:50
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
H3rnst Sin conexión
Secretario de la SAE
Overlord
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 644
Agradecimientos dados: 243
Agradecimientos: 112 en 49 posts
Registro en: Sep 2010
Mensaje: #18
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
(16-12-2011 10:50)tenchology escribió:  puede ser que en el ejercicio 3 (el de los errores de la funcion) falte poner que en la linea 3 hay un error semantico porque el identificador "b" no esta definido? (cuando hace a < b en el for)

yo iba a preguntar lo mismo, porque fijate que en la línea 4 sí te pone "el identificador sum no está declarado".
16-12-2011 11:07
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
tenchology Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 104
Agradecimientos dados: 14
Agradecimientos: 26 en 8 posts
Registro en: Dec 2008
Mensaje: #19
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
(16-12-2011 11:07)H3rnst escribió:  
(16-12-2011 10:50)tenchology escribió:  puede ser que en el ejercicio 3 (el de los errores de la funcion) falte poner que en la linea 3 hay un error semantico porque el identificador "b" no esta definido? (cuando hace a < b en el for)

yo iba a preguntar lo mismo, porque fijate que en la línea 4 sí te pone "el identificador sum no está declarado".

por eso, con mas razon. Si en sum esta el error, tambien deberia tenerlo b.

Y otra cosa con respecto a estos 2 errores: no estan "declarados" o "definidos"? A mi entender deberia ser "definidos" ya que las variables ocupan lugar en memoria, pero me gustaria cerciorarme con alguien que la tenga mas clara
16-12-2011 11:22
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
H3rnst Sin conexión
Secretario de la SAE
Overlord
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 644
Agradecimientos dados: 243
Agradecimientos: 112 en 49 posts
Registro en: Sep 2010
Mensaje: #20
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
En este caso creo que está bien poner que no estan declarados, más que nada por eso que dice que hay que analizarlo desde el punto de vista del compilador. Osea, en el momento de compilar salta el error de que el identificador no está declarado, después si uno lo declara habrá que ver si lo define o no, y será otra compilación con otro código.

Por otro lado he visto finales resueltos en donde marcan como error que "no está definida la variable ..." pero en el enunciado no dicen nada de analizar como si fuera el compilador. Dicen simplemente "encuentre los errores"
16-12-2011 14:57
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
proyectomaru Sin conexión
Secretario de la SAE
Ufa
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 699
Agradecimientos dados: 241
Agradecimientos: 328 en 86 posts
Registro en: Mar 2010
Mensaje: #21
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
(16-12-2011 10:36)gonnza escribió:  
Cita:como hicieron con el "módulo semántico" en una ocasión.
esa la hicieron porque en una parte del libro dice, claramente "existen rutinas de analisis semantico, pero no existe ningun modulo de analisis semantico"

Sí, pero digo que hacen esas cosas. Como "semánticamente correcto implica sintácticamente correcto" o "constantes booleanas". O sea, son cosas que leyendo uno debe saber pero juegan mucho con las palabras.

Igual es probable que lo del AFDR sea lo que vos decís, pero la verdad que me da fiaca buscarlo =P




(16-12-2011 14:57)H3rnst escribió:  En este caso creo que está bien poner que no estan declarados, más que nada por eso que dice que hay que analizarlo desde el punto de vista del compilador. Osea, en el momento de compilar salta el error de que el identificador no está declarado, después si uno lo declara habrá que ver si lo define o no, y será otra compilación con otro código.

Por otro lado he visto finales resueltos en donde marcan como error que "no está definida la variable ..." pero en el enunciado no dicen nada de analizar como si fuera el compilador. Dicen simplemente "encuentre los errores"

en uno de los volúmenes hay una explicación de declaración y definición, con el viejo y querido ejemplo del "struct" y "typedef", sería algo como lo de semántica de pratt tomado en el final de agosto.

Una fotito no cuesta nada, ayuda a muchos y nos ahorra a todos de darle plata al CEIT. Colaboremos subiendo finales! thumbup3
(Este mensaje fue modificado por última vez en: 16-12-2011 19:49 por proyectomaru.)
16-12-2011 19:46
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Ident Sin conexión
Militante
Sin estado :(
***

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 50
Agradecimientos dados: 6
Agradecimientos: 56 en 5 posts
Registro en: Feb 2010
Mensaje: #22
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
(16-12-2011 14:57)H3rnst escribió:  Osea, en el momento de compilar salta el error de que el identificador no está declarado, después si uno lo declara habrá que ver si lo define o no, y será otra compilación con otro código.

Una consulta. ¿Como sería en ANSI C el caso de declarar un identificador pero NO definirlo?

Es decir, si yo tengo:
int a; /* lo estoy definiendo */

(16-12-2011 19:46)proyectomaru escribió:  Como "semánticamente correcto implica sintácticamente correcto" o "constantes booleanas". O sea, son cosas que leyendo uno debe saber pero juegan mucho con las palabras.
¿Cual es la trampa de semánticamente correcto implica sintácticamente correcto? ¿Para el compilador o para el usuario?

Gracias!
17-12-2011 01:43
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
H3rnst Sin conexión
Secretario de la SAE
Overlord
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 644
Agradecimientos dados: 243
Agradecimientos: 112 en 49 posts
Registro en: Sep 2010
Mensaje: #23
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
(17-12-2011 01:43)Ident escribió:  
(16-12-2011 14:57)H3rnst escribió:  Osea, en el momento de compilar salta el error de que el identificador no está declarado, después si uno lo declara habrá que ver si lo define o no, y será otra compilación con otro código.

Una consulta. ¿Como sería en ANSI C el caso de declarar un identificador pero NO definirlo?

Es decir, si yo tengo:
int a; /* lo estoy definiendo */

(16-12-2011 19:46)proyectomaru escribió:  Como "semánticamente correcto implica sintácticamente correcto" o "constantes booleanas". O sea, son cosas que leyendo uno debe saber pero juegan mucho con las palabras.
¿Cual es la trampa de semánticamente correcto implica sintácticamente correcto? ¿Para el compilador o para el usuario?

Gracias!

Cito al libro de K&R:
Cita:La palabra "definición" se refiere al lugar donde se crea la variable o se le asigna un lugar de almacenamiento; "declaración" se refiere al lugar donde se establece la naturaleza de la variable pero no se le asigna espacio.(pág 36)

para mí la diferencia era que declarar era decir por ejemplo " int a; ", osea declaraste a como variable de tipo int. Y definirla era asignarle un valor. Que alguien me corrija si estoy mandando fruta.

Y con respecto a lo de "semánticamente correcto implica sintácticamente correcto" para mi sería verdadero. El libro dice que las rutinas semánticas son las encargadas de verificar que no haya errores que el análisis sintáctico no puede detectar (lo que no quiere decir que esté libre de errores). El parser es el que invoca a esas rutinas, no? Osea que si es semánticamente correcto, debería ser sintácticamente correcto. Al revés es falso.
17-12-2011 14:50
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #24
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
declaracion seria por ej cuando haces un typedef (asi era ?) y declaras un struct, para saber la "forma", pero no asignas ninguna variable ni nada en ningun lado

Definir es cuando haces int a; porque le asignas un espacio en memoria (por mas que el valor tenga basura)
Vos pensa que haces int a y podes usarlo, (si de casualidad el valor ahi es util), osea, ya ocupa lugar en memoria

[Imagen: v34BEFt.gif]
17-12-2011 15:50
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
H3rnst Sin conexión
Secretario de la SAE
Overlord
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 644
Agradecimientos dados: 243
Agradecimientos: 112 en 49 posts
Registro en: Sep 2010
Mensaje: #25
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
Entonces en la respuesta del final, lo correcto no sería haber puesto "El identificador sum no está definido" ?

¿Y no falta también la definición de la variable 'b' que está en la segunda cláusula del for ?
17-12-2011 16:04
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #26
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
Lo del 'b' en el for para mi tenes razon, ahi se lo comieron


Sobre lo del sum...
Ahora me dejas la duda.
Pero tambien hay que tener en cuenta que antes de requerir el valor para hacer la cuenta tiene que verificar los tipos para ver si es valido la suma en esos operadores, y si no sabemos el tipo de dato de sum, es porque no esta declarado (nota de pie: definicion incluye declaracion, porque ya tenes el tipo de dato. Onda, podes declarar sin definir, pero no podes definir sin declarar previamente)

[Imagen: v34BEFt.gif]
17-12-2011 16:12
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Ident Sin conexión
Militante
Sin estado :(
***

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 50
Agradecimientos dados: 6
Agradecimientos: 56 en 5 posts
Registro en: Feb 2010
Mensaje: #27
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
No me queda claro lo que dice K&R. ¿Como establezco la naturaleza de la variable sin asignarle espacio? ¿Establecer la naturaleza sería darle un tipo de dato?

Al margen de eso, si nos fijamos en las páginas 73 y 74 del VOL I, dice que por ejemplo int a; es una DEFINICIÓN. Según este volumen, son DECLARACIONES los prototipos de funciones y los struct (cuando se explicita su estructura interna).

Para mí lo de "semánticamente correcto implica sintácticamente correcto" también es correcto.


Saludos y gracias,
17-12-2011 16:40
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 887 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #28
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
Cita:¿Como establezco la naturaleza de la variable sin asignarle espacio? ¿Establecer la naturaleza sería darle un tipo de dato?

si yo quieri definir un struct, estoy estableciendo la naturaleza de un tipo de dato. Un struct conformado por un int y un char, ponele que se llama "bla" es un nuevo tipo de dato


yo hago struct bla ident;

entonces tengo variable que se llama "ident" de tipo bla

se entiende ?

[Imagen: v34BEFt.gif]
(Este mensaje fue modificado por última vez en: 17-12-2011 16:42 por gonnza.)
17-12-2011 16:42
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Ident Sin conexión
Militante
Sin estado :(
***

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 50
Agradecimientos dados: 6
Agradecimientos: 56 en 5 posts
Registro en: Feb 2010
Mensaje: #29
RE: [SINTAXIS] [PEDIDO] Final 12/12/2011
Sí, creo que entendí. "Establecer la naturaleza" es (como dice la citación del K&R) declarar por ejemplo un tipo de dato.

Con respecto a si en la resolución del final debería decir "definido" o "declarado", es muy fino... La realidad es que ni sum ni b están definidos. Eso es cierto.
17-12-2011 16:54
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)