Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tarea Kinder 1
https://docs.google.com/document/d/1kGl6W8Tpq5gUECSPuAd1H
FzM53-qPiUXB0X5npLY4II/edit
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿Qué hay que hacer con la declaración de precedencia?
Tarea Kinder 3
https://docs.google.com/document/d/1j-hpUeLtmAqO4QYpO_7WI2aVy2OGFPdEZu_qE
0HABvA/edit
Un arreglo de enteros A[i][j] se almacena como row-major, i va de 1 a 10 y j va de 1 a 20,
cada entero ocupa 4 bytes, iniciando en el byte 0, ¿cúal es la posición en bytes de
A[10][8]?
Seleccione una:
a. Ninguna es correcta ---- confirmen confirmo, no me da ningun resultado de los de la
seleccion CONFIRMO, da 748 -> ((10-1)*20+(8-1))*4
b. 256
c. 804
d. 224
e. 748 creo xd, es 748!!!
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿cómo debería quedar la producción statement : NAME EQUALS expression?
Seleccione una:
a. statement : expression NAME EQUALS
b. expression NAME EQUALS : statement
c. NAME expression EQUALS : statement
d. Ninguna es correcta
e. statement : NAME expression EQUALS -- el signo va de ultimo por ser postfija
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija (RPN)
con manejo de variables, ¿cuál es el resultado de la entrada 10 a = 10 b = a b +?
Seleccione una:
a. Ninguna es correcta
b. error <- ? ayudaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
c. 10
d. 0
e. 20
no es 20?
a=10
b=10
a+b ?
10+10=20 ?
Pero en la notación está como 10 a = en vez de a 10 =, no?
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija (RPN)
con manejo de variables, ¿cuál es el resultado de la entrada 10 a = 10 b = a b + 80 + 2 * c =
c 2 *?
a =10
b = 10
c = (a+ b + 80) * 2
c = c*2
No es 204?
Seleccione una:
a. error
b. 400
c. 200
d. Ninguna es correcta
e. 100
Seleccione una:
a. 5
b. 3
c. 1
d. Ninguna es correcta
e. 0
iuda :,c una creo….
seguro? queda asi el grafo? o no? confirmo zi x2 x3
no se :,c
Seleccione una:
a. 1
b. Ninguna es correcta
c. 2
d. 0
e. 3
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿a qué debe igualarse t en la posición 0 según la acción semántica de la producción
expression : expression + expression?
[0] = [1] [2] [3]
Seleccione una:
a. Ninguna es correcta
b. t[1]+t[3]
c. t[1]+t[2] x2
d. t[2]+t[3]
e. t[0]+t[1]
Seleccione una:
a. 256
b. 748
c. 224
e. 96
alguna idea? :( x2 256? o ninunga es correcta creo que esa 256 voy a poner esa no
estoy seguro. Mejor me pongo a llorarx2
es 256
Suponga la figura 6.43 del libro de texto y la expresión a==b && (c==d||e==f), si empieza
por la instrucción 100, ¿a qué instrucción llega la expresión cuando se forma el árbol
anotado?
Seleccione una:
a. 104
b. 105 ←- CREO, confirmen, Confirmo
c. 107
d. Ninguna es correcta
e. 106
ayudaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
x2
que sea lo que el bicho quiera
Seleccione una:
a. 5
b. 6
c. 3
d. Ninguna es correcta
e. 4
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿cuál es el resultado de la entrada 2 4 / 5 6 - *?[
Seleccione una:
a. -1
b. error
c. -0.5 Creo Xd si confirmo x2
d. Ninguna es correcta
e. 0.5
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿cómo debería quedar la producción expression : expression + expression?
Seleccione una:
a. expression expression : expression +
b. expression : expression expression +
c. Ninguna es correcta
d. expression : + expression expression
e. expression expression + : expression
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), la entrada 10 a = a da error ¿qué producción hay que agregar al esquema de
traducción?
Seleccione una:
a. expression : statement
b. expression : expression expression el problema es el símbolo igual es notacion post
c. statement : statement statement
d. No hay que agregar nada
e. Ninguna es correcta --- En otra pregunta aparece esta producción, por tanto es nac, me
parece un poco más lógico, confirman? cual produccion? xd Sera uste? Sera uste?x2x3
le voy a hacer caso uste!, le voy a hacer caso uste! x2
Considere la figura 5.1 del libro de texto, construya un árbol anotado para la expresión
(3+4)*(5+6)n. ¿cuántas veces se heredó el valor 77?
Seleccione una:
a. 4
b. 2
c. 3
d. 1
e. N
inguna es correcta <- yo digo que es esta, no se heredan atributos x2
f
17?
Seleccione una:
a. 4
b. 2
c. 5
d. 3, confirman? confirmo
e. Ninguna es correcta
Seleccione una:
b. Ninguna es correcta
yo puse esta
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿cómo debe ser la acción semántica de la producción statement : NAME EQUALS
expression?
Seleccione una:
NAME = expresion
a = 10
pasar a
c. names[t[3]] = t[1]
d. Ninguna es correcta
e. names[t[1]] = t[3]
de las 3 * ?
F, yo pondre e
para mi es la 3 porque las otras dos no toman en cuenta la posicion del signo igual
Considere la figura 5.1 del libro de texto, construya un árbol anotado para la expresión
(3+4)*(5+6)n. ¿cuántas veces se heredó el valor 7?
Seleccione una:
b. 1
c. 4
d. 2
e. 3
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿Qué hay que hacer con la declaración de precedencia?
Seleccione una:
c. Ninguna es correcta
Seleccione una:
b. 4
c. Ninguna es correcta
d. 3
e. 2
Considere la figura 7.9 del libro de texto, se desea calcular f(5), ¿cuántos nodos hoja tiene
el árbol de activación?
Seleccione una:
a. 9
b. Ninguna es correcta
c. 7 no son 7?
d. 8 <-
e. 10
Suponga la figura 6.36 del libro y la instrucción repeat S while B, ¿qué debe incluir el
atributo que genera código de tres direcciones?
Seleccione una:
a. label(B.false)||S1.code||label(S1.next)||B.true
b. Ninguna es correcta Para mi es esta, xD la otra su etiqueta de salida (S1.next) debería
estar después de B.code no antes
c. S1.code||label(S1.next)||B.code||S2.next||B.true
d. label(B.true)||S1.code||label(S1.next)||B.code .yo digo que esta xdxd Será uste? porque si
ven la figura, el s1.next es igual a una etiquetas y no contiene nada de s2 . Es esta?
e. S1.code||label(S1.next)||B.code||S2.next
Ayuda…
8.5
a. Ninguna es correcta
b. 8
c. 7
d. 10
e. 9 ? confirmo, x2x3
¿ 6.36 generaría el código de tres direcciones para la asignación x=a[i][j]+b[i][j]?
Seleccione una:
a. Ninguna es correcta
b. 10
c. 7
d. 8 x2
e. 98.5
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿Qué hay que hacer con los paréntesis?
Seleccione una:
a. Ninguna es correcta
Seleccione una:
a. Ninguna es correcta
b. 8
c. 7
d. 6
e. 5
si son 6 creo
Considere la figura 5.1 del libro de texto, construya un árbol anotado para la expresión
(3+4)*(5+6)n. ¿cuántos nodos hojas tiene el árbol?
Seleccione una:
b. 20
c. 17
d. 19
e. 18
quitando los nodos signos y el nodo dig.valex quedan 18, pasen la figura plox.
Suponga la figura 6.43 del libro de texto y la expresión a==b && (c==d||e==f), si empieza
por la instrucción 100, ¿cuántos nodos hoja tiene el árbol anotado?
Seleccione una:
a. 13 -------- confirmado
b. 12
c. 14
e. Ninguna es correcta
Considera la figura 8.10 de libro de texto, ¿cuál es bloque más grande de flujo, es decir,
el que tiene más líneas de código de tres direcciones?
Seleccione una:
a. El segundo for
b. El quinto for
e. Ninguna es correcta
es que bloques basicos seria solo asignacion no? osea sentencia y viendo el codigo la
sentencia del 5to for es mas grande pero no se si estoy bien
y si ponen la figura? xdx2x3x4x5
si es el quinto, porque en los demás unicamente hay asignación o etiquetas, confirmen;
yo digo que si la sentencia del 5to for confirmo for no ?x2
excelente
pero el quinto está dentro del 2do for, en teoria el 2do jejej bueno esa fue mi logica
Seleccione una:
a. 1
b. 0
c. 3
d. 5
e. Ninguna es correcta
suponga la figura 6.36 del libro y la instrucción repeat S while B, ¿qué debe incluir el atributo
que genera código de tres direcciones?
Seleccione una:
a. Ninguna es correcta
b. label(B.false)||S1.code||label(S1.next)||B.true
c. S1.code||label(S1.next)||B.code||S2.next||B.true
d. label(B.true)||S1.code||label(S1.next)||B.code
e. S1.code||label(S1.next)||B.code||S2.next
??? COnfirmen
Seleccione una:
a. 0
b. 1 si es uno
c. 3
d. 2 confirmen n
o, es 1
e. Ninguna es correcta
Considere el código ejemplo calc.py de PLY, si se desea utilizar una notación postfija
(RPN), ¿a qué debe igualarse t en la posición 0 según la acción semántica de la
producción expression : expression + expression?
Seleccione una:
a. t[2]+t[3]
b. t[1]+t[3]
c. t[1]+t[2] -- confirmen
d. Ninguna es correcta
e. t[0]+t[1]
Seleccione una:
a. 9
b. 7
c. 8
d. 10
e. Ninguna es correcta