You are on page 1of 2

D ISEÑO DE A LGORITMOS Y E STRUCTURAS DE DATOS (2214), B IOTECNOLOGÍA

S IMULACRO P RIMER PARCIAL


03/05/181
T EMA 1

Nombre y apellido:................................................................ D.N.I....................................


Todos los problemas deben tener el código que lo resuelva acompañado de un texto en lenguaje
natural (preferentemente en castellano actual) que explique las ideas que pusieron en juego para re-
solverlo. Se valorarán más los programas que tengan códigos de menor número de líneas apelando
a la abstracción mediante procedimientos y funciones.
Muy importante: Los nombres de los archivos que envíes como soluciones deben tener el siguien-
te formato: ApellidoNombreP1v1.py, ApellidoNombreP2v1.py, ApellidoNombreP2v2.py, etc. donde
Apellido y Nombre son tu apellido y tu nombre, escritos teniendo sólo la primer letra en máyuscula
y las demás en minúscula (si tenés dos nombre y/o dos apellidos sólo va el primero). Los siguientes
dos caracteres son una P mayúscula y un número que indican a qué problema se refiere el archivo,
los siguientes dos caracteres son una v minúscula y un número para diferenciar diferentes versio-
nes del código de un mismo problema, los nombres de archivos no tendrán espacios o caracteres
en blanco, se escriben todo seguido. Los archivos entregados tendrán extensión .py. Escribir bien
el nombre de archivo es parte de la evaluación y se le asignará una porción de la nota final.

El rol del maestro es el de crear condiciones para la invención


antes que transmitir conocimiento predigerido.
– Seymour Papert

Problema 1. Escribí un programa que recorra todo el tablero y se asegure que en cada celda queden
exactamente 33 bolitas verdes. Determiná si el tablero inicial debe cumplir una precondición y si así
fuera enunciala.

Problema 2. Dado un procedimiento PonerN(b,c) que ponga b bolitas de color c en la celda actual,
encontá todos los errores en los siguientes procedimientos y explicá por qué son errores. Podes
consignar programas que hayas diseñado para evaluar los procedimientos en busca de los errores,
explicando cómo los pensaste.
def P1():
def P2(p):
PonerN(v,'A')
PonerN(3, 'A')
Mover(v)

1 El 3 de mayo de 1997 comienza la “revancha” revancha entre la supercomputadora de IBM Deep Blue y el campeón

mundial de ajedrez Gary Kasparov, que se había impuesto a la máquina en una serie de encuentros el año anterior. En
esta ocasión, Kasparov sólo pudo derrotar a este monstruo del cálculo capaz de analizar 200 millones de movimientos por
segundo en uno de los seis juegos que disputaron. Fue la primera vez que una máquina derrotó a un campeón mundial de
ajedrez.
D ISEÑO DE A LGORITMOS Y E STRUCTURAS DE DATOS (2214), B IOTECNOLOGÍA

S IMULACRO P RIMER PARCIAL


03/05/182
T EMA 2

Nombre y apellido:................................................................ D.N.I....................................


Todos los problemas deben tener el código que lo resuelva acompañado de un texto en lenguaje
natural (preferentemente en castellano actual) que explique las ideas que pusieron en juego para re-
solverlo. Se valorarán más los programas que tengan códigos de menor número de líneas apelando
a la abstracción mediante procedimientos y funciones.
Muy importante: Los nombres de los archivos que envíes como soluciones deben tener el siguien-
te formato: ApellidoNombreP1v1.py, ApellidoNombreP2v1.py, ApellidoNombreP2v2.py, etc. donde
Apellido y Nombre son tu apellido y tu nombre, escritos teniendo sólo la primer letra en máyuscula
y las demás en minúscula (si tenés dos nombre y/o dos apellidos sólo va el primero). Los siguientes
dos caracteres son una P mayúscula y un número que indican a qué problema se refiere el archivo,
los siguientes dos caracteres son una v minúscula y un número para diferenciar diferentes versio-
nes del código de un mismo problema, los nombres de archivos no tendrán espacios o caracteres
en blanco, se escriben todo seguido. Los archivos entregados tendrán extensión .py. Escribir bien
el nombre de archivo es parte de la evaluación y se le asignará una porción de la nota final.

El rol del maestro es el de crear condiciones para la invención


antes que transmitir conocimiento predigerido.
– Seymour Papert

Problema 1. Escribí un programa que recorra todo el tablero y se asegure que en cada celda queden
exactamente 31 bolitas azules. Determiná si el tablero inicial debe cumplir una precondición y si así
fuera enunciala.

Problema 2. Dado un procedimiento NoverN(n,d) que mueve el cabezal n casillas en la dirección


d, encontá todos los errores en los siguientes procedimientos y explicá por qué son errores. Podes
consignar programas que hayas diseñado para evaluar los procedimientos en busca de los errores,
explicando cómo los pensaste.
def Q1():
def Q2(q):
NoverN(m,'E')
MoverN(3,'S')
Poner(m)

2 El 3 de mayo de 1997 comienza la “revancha” revancha entre la supercomputadora de IBM Deep Blue y el campeón

mundial de ajedrez Gary Kasparov, que se había impuesto a la máquina en una serie de encuentros el año anterior. En
esta ocasión, Kasparov sólo pudo derrotar a este monstruo del cálculo capaz de analizar 200 millones de movimientos por
segundo en uno de los seis juegos que disputaron. Fue la primera vez que una máquina derrotó a un campeón mundial de
ajedrez.

You might also like