3Eva_IT2019_T3 Prueba de escritorio – cadenas, listas, segmentar, separar

3ra Evaluación I Término 2019-2020, Septiembre 13, 2019

Tema 3. (10 puntos) ¿Qué muestra el siguiente código? Justifique su respuesta

A = 'Num empresas,17,0|9|1,10|19|2,20|29|3'

campos = A.split( ',')
valores = []
for rango in campos[2:]:
    valores.append(int(rango.split('|')[0]))

print(valores)

Asuma que este tema NO tiene errores de compilación. Si usted cree que hay algún error de compilación, consúltelo inmediatamente con su profesor.

3Eva_IT2019_T2 Juego del ahorcado

3ra Evaluación I Término 2019-2020, Septiembre 13, 2019

Tema 2. (30 puntos)
Escriba un programa de Python que implemente un juego de adivinanzas de palabras.

Considere que para su programa ya están definidas las siguientes variables y función:

1. Una lista C de las categorías para el juego.

C = ['Transportes', 'Alimentos', 'Deportes', ...],

2. La función perteneceCategoria(palabra, categoria) que retorna True si palabra pertenece a la categoria, False en caso contrario.

3. El diccionario puntajes con el siguiente formato:

puntajes = {'Transportes':{'a':10, 't':4, 'f':5, ...},
            'Deportes': {'a':3, 'z':5, 't':10, ...},
             ... }

Para la implementación del juego considere las siguientes reglas:

r1. El jugador tiene cinco turnos para jugar

Para cada turno:

r2. El programa selecciona aleatoriamente una categoría de la lista C

r3. El programa le pide al jugador que ingrese una palabra para la categoría seleccionada en el paso r2

r4. Si la palabra pertenece a la categoría dada y no ha sido ingresada en un turno anterior, calcule los puntos totales para la palabra.
El puntaje de la palabra es la suma de los puntajes de cada una de sus letras, de acuerdo al diccionario puntajes.
Una letra tendrá puntajes distintos dependiendo de la categoría del paso r2.
Si la palabra no cumple con las condiciones, el jugador no obtiene puntos en ese turno

r5. En cada turno, muestre el puntaje obtenido para la palabra ingresada y el puntaje acumulado

Al final de los cinco turnos:

r6. El jugador habrá ganado si completa un mínimo de 500 puntos, muestre el mensaje correspondiente “Ganó” o “Perdió”.

3Eva_IT2019_T1 Producción en hacienda

3ra Evaluación I Término 2019-2020, Septiembre 13, 2019

Tema 1. (60 puntos)
Asuma que tiene un archivo con la información de los productos agrícolas cosechados por una hacienda durante todos los días del año 2018.

La información se encuentra en el siguiente formato:

codigo1,codigo2,codigo3,...,codigoN
codigo_producto,fecha(dd-MMM-aaaa),cantidad_cosechada

Ejemplo:

100034,100312,100021,...,201245,432198 
codigo_producto,fecha(dd-MMM-aaaa),cantidad_cosechada
100034,02-ENE-2018,5
100021,02-ENE-2018,15
100021,07-ENE-2018,11
432198,20-ENE-2018,12
...

Nota: La primera línea del archivo contiene los códigos de todos los productos agrícolas presentes en el resto del archivo, mientras que la segunda línea es la cabecera del archivo.

Implemente las siguientes funciones:

1.1. crearMatriz(nomArchivo) que recibe el nombre del archivo con la información de las cosechas de un año; y devuelve un vector con todos los códigos de productos y una matriz con los totales (valores enteros) de cosechas para cada producto (filas) durante cada mes del año (columnas). Ejemplo:

[ENE,FEB,MAR,ABR,MAY,JUN, JUL,AGO,SEP,OCT,NOV,DIC]
Cod =[
[100034],
[100312],
[100021],
...
[201245],
[432198]]
M=[
[32, 12, 45,  67, 84, 114,  21, 57, 99, 84, 74, 65],
[43, 15, 67,  21, 77,  95, 110, 78, 93, 63, 56, 32],
[65, 78, 32, 155, 32,  73,  87, 91, 22, 65, 82, 17],
...
[39, 71, 63,  32, 57,  85,  83, 12, 11, 15, 34, 65],
[55, 51, 54,  67, 64,  63,  56, 52, 71, 77, 87, 32]]

1.2. mesMasRentable(M) que recibe la matriz de cosechas M . Esta función retorna el nombre del mes en que más se cosechó y el total de cosecha de ese mes.

1.3. altoBajos(M, k) que recibe la matriz de cosechas M y un entero k. La función retorna el nombre de todos los meses que tienen una cosecha total con al menos k unidades por debajo de la cosecha del mejor mes del año.

1.4. mejorTrimestre(M, Cod, codigo) que recibe la matriz de cosechas M, el vector de códigos Cod y el codigo de un producto. La función debe retornar el nombre del trimestre («T1», «T2», «T3» o «T4») en el que más se cosechó el producto con codigo .

1.5. mejoresNProductos(M, Cod, n) que recibe la matriz de cosechas M, el vector de códigos Cod y un número entero n . La función debe retornar los códigos de los n productos más cosechados durante el año.

1.6. promedioProductos(M, Cod, codigos) que recibe la matriz de cosechas M, el vector de códigos Cod y una lista con códigos de productos. La función retorna el promedio de los totales de cosecha entre los códigos dados en la lista.

7. porCategoria(M, Cod, categorias) que recibe la matriz de cosechas M , el vector de códigos Cod y un diccionario categorias con el siguiente formato:

categorias = {'legumbres':[100034,201245,...],
              'verduras': [100021,200013,...],
               ... }

La función deberá escribir un archivo por cada categoría con el siguiente formato: Archivo_legumbres.txt

codigo,ENE,FEB,MAR,ABR,MAY,JUN,JUL,AGO,SEP,OCT,NOV,DIC
100034,32,12,45,67,84,114,21,57,99,84,74,65
201245,39,71,63,32,57,85,83,12,11,15,34,65
...

El nombre del archivo debe ser el mismo de la categoría dentro del diccionario categorias y terminar con “.txt”.

Rúbrica: numeral 1.1 (8 puntos), numeral 1.2 (5 puntos),numeral 1.3 (8 puntos), numeral 1.4 (9 puntos), numeral 1.5 (6 puntos), numeral 1.6 (9 puntos), numeral 1.7 (15 puntos).


Referencia: Producción de brócoli crece 300% desde 2000
https://www.eluniverso.com/2005/03/24/0001/9/E2FB1BA3C6DC41C899E8B87A7F2FBD36.html

5.2 Optica – Rayo reflejado en plano inclinado con Python

Propagación multitrayecto o multicamino en plano inclinado

Referencia: Sears-Zemansky Cap33.2 Vol2 Ed.12 p1123, Optica – Rayo reflejado en plano horizontal

El plano de reflexión puede estar inclinado respecto al eje de las x. Para el caso dado, se puede considerar igualar las pendientes del rayo incidente y reflejado referenciadas con la pendiente del plano inclinado.

rayo reflejado en plano inclinado

la pendiente del plano inclinado se obtiene como:

m_s = \frac{\Delta suelo } {\Delta x_{intervalo}} = \frac{s_b-s_a}{x_b-x_a}

Respecto al plano, los ángulos de rayo incidente y reflejado son iguales por lo que secorrige con la pendiente del plano. Las pendientes del rayo izquierdo y rayo derecho con la influencia de la pendiente del suelo se igualan:

-(m_z-m_s) = m_r-m_s -m_z = m_r - 2 m_s

Para obtener sc como un punto en el plano, requiere función de suelo(x) evaluada en sc , para usar todo en función de xc :

m_s = \frac{\Delta s}{\Delta x} = \frac{s_b-s_a}{x_b-x_a} s(x) = m_s x_a +b_s b_s = s_a-m_s x_a s_c = s(c) = m_s x_c +b_s

Lo anterior permite actualizar el planteamiento de la pendientes, y despejar el valor de la incógnita xc

-m_z = m_r - 2 m_s - \frac{s_c-y_a}{x_c-x_a} = \frac{y_b-s_c}{x_b-x_c}-2m_s - \frac{s_c-y_a}{x_c-x_a} = \frac{y_b-s_c-2m_s(x_b-x_c)}{x_b-x_c}

primero se busca agrupar sc

-(x_b-x_c)(s_c-y_a) = (x_c-x_a)(y_b-s_c-2m_s(x_b-x_c))
-s_c(x_b-x_c)+y_a(x_b-x_c) = y_b(x_c-x_a)-s_c(x_c-x_a)-2m_s(x_b-x_c)(x_c-x_a)
-s_c(x_b-x_c) + s_c(x_c-x_a) = -y_a(x_b-x_c) + y_b(x_c-x_a) - 2m_s(x_b-x_c)(x_c-x_a)
s_c(-x_b+x_c+x_c-x_a) = -x_b y_a+x_c y_a + y_b x_c - x_a y_b -2m_s(x_b(x_c-x_a)-x_c(x_c-x_a))

sutituyendo sc con la expresión del plano con pendiente evaluada en el punto xc , lo que se expresa como:

(m_s x_c +b_s)(2 x_c-(x_a+x_b)) = x_c (y_a + y_b)-(x_a y_b -x_b y_a)-2m_s(x_b x_c- x_a x_b - x_c^2 + x_a x_c))

teniendo ahora como objetivo encontrar una expresión para xc

m_s x_c (2 x_c-(x_a+x_b))+b_s(2 x_c-(x_a+x_b)) = x_c (y_a + y_b)-(x_a y_b +x_b y_a)-2m_s(- x_c^2 + x_c(x_b + x_a) - x_a x_b)
2m_s x_c^2 - m_s x_c(x_a+x_b)+2 b_s x_c-b_s(x_a+x_b) = x_c (y_a + y_b)-(x_a y_b +x_b y_a)+ 2m_s x_c^2 - 2m_s x_c (x_b + x_a) + 2m_s x_a x_b
x_c(- m_s (x_a+x_b)+2 b_s)-b_s(x_a+x_b) = x_c (y_a + y_b- 2m_s (x_b + x_a))-(x_a y_b +x_b y_a) + 2m_s x_a x_b
x_c(- m_s (x_a+x_b)+2 b_s) -x_c (y_a + y_b- 2m_s (x_b + x_a)) = b_s(x_a+x_b) -(x_a y_b +x_b y_a) + 2m_s x_a x_b
x_c(2 b_s - (y_a + y_b) - m_s (x_a+x_b) + 2m_s (x_b + x_a)) = b_s(x_a+x_b) -(x_a y_b +x_b y_a) + 2m_s x_a x_b
x_c(2 b_s - (y_a + y_b) + m_s(x_a+x_b) = b_s(x_a+x_b) -(x_a y_b +x_b y_a) + 2m_s x_a x_b
x_c(2 b_s - (y_a + y_b) + m_s (x_a+x_b)) = b_s(x_a+x_b) -(x_a y_b +x_b y_a) + 2m_s x_a x_b
x_c = \frac{b_s(x_a+x_b) -(x_a y_b +x_b y_a) + 2m_s x_a x_b}{2 b_s - (y_a + y_b) + m_s (x_a+x_b)}

Con el valor de xc se pudede obtener la altura del punto sc. a partir de la ecuación que describe el plano s(x).

Algoritmo en Python

A partir del algoritmo del rayo reflejado en plano horizontal , se añaden las instrucciones para calcular ms, bs, xc, sc.

obteniendo ahora el resultado:

punto reflejado: [ 7.666666666666665 , 1.3333333333333335 ]

con la gráfica

rayo reflejado en plano inclinado grafica

Instrucciones en Python

# rayo incidente y reflejado
# en plano inclinado
# blog.espol.edu.ec/ccpg1001
import numpy as np
import matplotlib.pyplot as plt

# INGRESO
# posición de antenas
xa = 1  # Izquierda
ya = 4
xb = 11 # Derecha
yb = 2

# plano el suelo
sa = 2
sb = 1

# muestras en grafica
muestras = 21

# PROCEDIMIENTO
# pendiente de suelo
ms = (sb-sa)/(xb-xa)
bs = sa-ms*xa
# punto de reflejo
numerador   = bs*(xa+xb)-(xa*yb+xb*ya)+2*ms*xa*xb
denominador = 2*bs-(ya+yb)+ms*(xa+xb)
xc = numerador/denominador

sc = ms*xc+bs

# SALIDA
print('punto reflejado: [',xc,',',sc,']')

# GRAFICA
#puntos en el plano
plt.scatter([xa,xc,xb],[ya,sc,yb])
plt.scatter([xc],[sc],label='punto reflejo')
# lineas de rayos
plt.plot([xa,xc],[ya,sc],label='incidende')
plt.plot([xc,xb],[sc,yb],label='reflejado')
plt.plot([xa,xb],[sa,sb],label='suelo')

# etiquetas anotadas
plt.annotate(' reflejo',[xc,sc])

# etiquetas
plt.legend()
plt.xlabel('x')
plt.ylabel('y')
plt.title('reflexión de rayos en plano inclinado')
plt.grid()

plt.show()

Tarea: Consiere que el suelo está compuesto de al menos dos segmentos con inclinaciones diferentes. Podría darse mas de una reflexión al punto de recepción o ninguna

Una aplicación relacionada de análisis multitrayecto en Girni: Coordenadas – Rayo reflejado en perfil por tramos

5.1 Optica – Rayo reflejado en plano horizontal con Python

Referencia: Sears-Zemansky Cap33.2 Vol2 Ed.12 p1123

El modelo de luz basado en rayos permite describir la propagación por: reflexión y refracción.

Un rayo de onda luminosa que incide en una material liso que separa dos materiales transparentes (como el aire y el vidrio o el agua y el vidrio), el rayo es reflejado parcialmente y también refractado parcialmente hacia el segundo material.

Los rayos incidente, reflejado y refractado en una interfaz lisa entre dos materiales ópticos forman ángulos θarb respecto a la normal (perpendicular) a la superficie en el punto de incidencia se ilustra en la figura. Si la superficie es rugosa, tanto la luz transmitida como la reflejada se dispersan en varias direcciones y no hay un ángulo único de transmisión o reflexión.

La reflexión con un ángulo definido desde una superficie muy lisa se llama reflexión especular ( latin de “espejo”). La reflexión dispersa a partir de una superficie áspera se llama reflexión difusa.

Propagación multitrayecto o multicamino en plano horizontal

Referencia: Propagación multicamino

En telecomunicaciones, la propagación de ondas de radio presentan un comportamiento semejante al de la luz para reflexión conocido como propagación multicamino o multitrayecto.

El fenómeno se da cuando las señales de radio llegan a la antena receptora por dos o más caminos y en diferentes tiempos.

La propagación mutitrayecto puede causar problemas en la recepción de la señal, debido a la interacción entre las señales recibidas. A fines prácticos, la señal obtenida en recepción difiere de la original y causa efectos que se han de compensar.

Ejercicio con gráfica

Realizar la gráfica de los rayos incidente, reflejado y directo entre el transmisor y receptor con antenas a diferentes alturas, semejante a la gráfica anterior.

Desarrollo

Si los ángulos incidente y reflejado son iguales, la pendiente rayo incidente debe ser igual en magnitud a la pendiente del rayo reflejado. Las pendientes tienen signo opuesto, el rayo izquierdo tiene pendiente negativa.

- \frac{\Delta y_{izquierda}} {\Delta x_{izquierda}} = \frac{\Delta y_{derecha}}{\Delta x_{derecha}} - \frac{s_c-y_a}{x_c-x_a} = \frac{y_b-s_c}{x_b-x_c}

Por facilidad de la ecuación, se supondrá que el suelo es paralelo al eje x, a una altura sc del eje de referencia.

Se debe obtener el valor de xc  de la ecuación anterior, que realizando un poco de trabajo se obtiene que:

- (x_b-x_c)(s_c-y_a) = (x_c-x_a)(y_b-s_c) - x_b(s_c-y_a) + x_c (s_c-y_a) = x_c (y_b-s_c)-x_a (y_b-s_c) x_c (s_c-y_a) - x_c (y_b-s_c)= -x_a (y_b-s_c) + x_b(s_c-y_a) x_c (2s_c-y_a-y_b)= -x_a (y_b-s_c) + x_b(s_c-y_a) x_c = \frac{x_b(s_c-y_a)-x_a(y_b-s_c)}{2s_c-y_a-y_b}

Obtenido el punto xc  y dado que el plano es horizontal, la altura  sc  es constante.

Con el algoritmo se puede obtener el punto de reflexión para varias alturas de antena y varias alturas del plano.

resultado con datos muestra:

punto reflejado: [ 8.5 , 1 ]

Instrucciones en Python

# rayo incidente y reflejado
# blog.espol.edu.ec/ccpg1001
import numpy as np
import matplotlib.pyplot as plt

# INGRESO
# posición de antenas
xa = 1  # Izquierda
ya = 4
xb = 11 # Derecha
yb = 2

# plano el suelo
sc = 1  # altura

# muestras en grafica
muestras = 21

# PROCEDIMIENTO
numerador   = xb*(sc-ya)-xa*(yb-sc)
denominador = 2*sc-ya-yb
xc = numerador/denominador

# SALIDA
print('punto reflejado: [',xc,',',sc,']')

# GRAFICA
#puntos en el plano
plt.scatter([xa,xc,xb],[ya,sc,yb])
plt.scatter([xc],[sc],label='punto reflejo')
# lineas de rayos
plt.plot([xa,xc],[ya,sc],label='incidende')
plt.plot([xc,xb],[sc,yb],label='reflejado')
plt.plot([xa,xb],[sc,sc],label='suelo')

# etiquetas anotadas
plt.annotate(' reflejo',[xc,sc])

# etiquetas
plt.legend()
plt.xlabel('x')
plt.ylabel('y')
plt.title('reflexión de rayos en plano')
plt.grid()

plt.show()

Tarea:

a) Añadir la trayectoria directa del rayo entre el transmisor y receptor

b) Considerar que el plano puede estar inclinado respecto al eje de las x,por lo que para igualar las pendientes del rayo incidente y reflejado se referencian con la pendiente del plano.

m_s = \frac{\Delta suelo } {\Delta x_{intervalo}} = \frac{s_b-s_a}{x_b-x_a} -(m_z-m_s) = m_r-m_s -m_z = m_r - 2 m_s

Actividades 2da Evaluación

En esta sección se publica el contenido por semana usado o a usar en clases. Cada sección contiene temas de lecturas previa, Ejercicios realizados en clases, videos tutoriales, tareas y material complementario.

2da Evaluación - Semana 08 a 14

Semana08 Funciones - Reusar algoritmos

Lecturas

Funciones en programación - Reusar algoritmos (con video)

Opcional: Funciones Recursivas (con video)

Funciones - Ejercicios resueltos

2daEva_IIT2004_T3 Reciclar vasos

Solución propuesta: s2daEva_IIT2004_T3 Reciclar vasos

3Eva_IIT2008_T1 Contar palabras para un clasificado

Solución propuesta: s3Eva_IIT2008_T1 Contar palabras para un clasificado

2Eva_IIT2008_T2 Etiquetar a robots (R2D2)

Solución propuesta: s2Eva_IIT2008_T2 Etiquetar a robots (R2D2)

3Eva_IT2006_T4 Juego planta bombas (buscaminas)

Solución propuesta: s3Eva_IT2006_T4 Juego planta bombas (buscaminas)

2Eva_IT2015_T3 Distribuye tortugas en región

Solución propuesta: s2Eva_IT2015_T3 Distribuye tortugas en región

2Eva_IT2015_T4 Movilidad de tortugas en región

Solución propuesta: s2Eva_IT2015_T4 Movilidad de tortugas en región

3Eva_IT2005_T2 Juego biológico

Solución propuesta: s3Eva_IT2005_T2 Juego biológico

3Eva_IIT2007_T2 Verificar matriz Sudoku

Solución propuesta solo 1ra Regla: s3Eva_IIT2007_T2 Verificar matriz Sudoku

2Eva_IIT2010_T3 Validar registro de revocatoria en CNE

Solución propuesta: s2Eva_IIT2010_T3 Validar registro de revocatoria en CNE

Tarea

Convertir el algoritmo realizado en la sesión 06, a una función, enviando los parámetros de modo, palabra y las listas de diccionario en cada idioma.

2Eva_IT2015_T1 kutipak() quichua-español

2Eva_IIT2011_T2 Ubicar ficha en tablero

2Eva_IIT2011_T3 Movimientos del caballo en ajedrez

1Eva_IT2015_T3 Capacitar a voluntarios seleccionados aleatoriamente

1Eva_IT2015_T4 Asignar voluntarios a bloques por tipo de capacitación

2Eva_IT2003_T3 Encriptar una frase cada 3 letras

2Eva_IIT2010_T2 Mostrar valores únicos en vector

Semana09 Menú - Listas

Actividades 1ra Evaluación

En esta sección se publica contenido por semana de clases. Cada sección contiene temas de lecturas previa, Ejercicios realizados en clases en la semana, videos tutoriales, tareas y material complementario.

1ra Evaluación - Semana 01 a 07

Semana01 Estructura Básica y Condicionales
Semana02 Lazos y Acumuladores

Lectura

Lazos/Bucles While en programación – Estructuras para Repetir o iterar

Contadores y Acumuladores en programación

Vectores en programación – Arreglos de una dimensión en Python

Lazos y acumuladores - Ejercicios resueltos

1Eva_IIIT2003_T2 Verificar números triangulares

Solución propuesta: s1Eva_IIIT2003_T2 Verificar números triangulares

1Eva_IIT2002_T4 Cociente de fibonacci

Solución propuesta: s1Eva_IIT2002_T4 Cociente de fibonacci

1Eva_IIT2012_T1 Sucesión de Padovan

Solución propuesta: s1Eva_IIT2012_T1 Sucesión de Padovan

Juego de icosaedros. Desarrollado en clase, ingresando solo los valores de las caras del icosaedro, archivo adjunto. La propuesta de solución al examen incluye uso de números aleatorios que es parte de los temas a tratar la siguiente semana (lecturas).

1Eva_IIT2003_T4 Juego con icosaedros

Solución propuesta:  s1Eva_IIT2003_T4 Juego con icosaedros

Semana03 Cociente y Residuo, Números Aleatorios, Bases numéricas

Lectura

Cociente y Residuo: Operaciones básicas matemáticas y lógicas en Python

Números Aleatorios con Python (con video)

Decimal a Binario - Algoritmo Básico en Python

Binario a Decimal - Algoritmo Básico en Python

Cociente y residuo - Ejercicios resueltos

2daEva_IIT2004_T3 Reciclar vasos

Solución propuesta con video tutorial: s2Eva_IIT2004_T3 Reciclar vasos

2Eva_IT2008_T2 Validar cédula ecuatoriana

Solución propuesta: s2Eva_IT2008_T2 Validar cédula ecuatoriana

1Eva_IT2004_T2 Verificar ISBN

Solución propuesta: s1Eva_IT2004_T2 Verificar ISBN

1Eva_IT2014_T2 Verificar EAN. En el aula se requeria: separar los componentes de producto, empresa y pais. Luego encontrar la suma de los digitos con la operación indicada en el enunciado. La siguiente semana de ser necesario se explica el tema de la decena superior.

Solución propuesta: s1Eva_IT2014_T2 Verificar EAN

1Eva_IIT2010_T2 Venta de pasajes tren turístico

Solución propuesta: s1Eva_IIT2010_T2 Venta de pasajes tren turístico

1Eva_IT2011_T1 Ahorros de Juan vs Pedro

Solución propuesta: s1Eva_IT2011_T1 Ahorros de Juan vs Pedro

3Eva_IT2009_T2 Seleccionar billetes de cajero automático

Solución propuesta: s3Eva_IT2009_T2 Seleccionar billetes de cajero automático

1Eva_IIT2013_T2 Números simétricos

Solución propuesta: s1Eva_IIT2013_T2 Números simétricos

Bases Numéricas - Ejercicios resueltos

1Eva_IIT2008_T1 Odómetro OCTAL

Solución propuesta: s1Eva_IIT2008_T1 Odómetro OCTAL

Números Aleatorios - Ejercicios Resueltos

1Eva_IT2005_T4 Lanza penales

Solución propuesta con video: s1Eva_IT2005_T4 Lanza penales

1Eva_IIT2004_T3 Estimar π por Montecarlo

Solución Propuesta con video: s1Eva_IIT2004_T3 Estimar π por Montecarlo

1Eva_IIT2011_T3 Parchis 2 fichas

Solución propuesta: s1Eva_IIT2011_T3 Parchis 2 fichas

3Eva_IT2007_T1 Máquina tragamonedas

Solución propuesta: s3Eva_IT2007_T1 Máquina tragamonedas

1Eva_IIT2005_T4 Juego escaleras y serpientes

Solución propuesta: s1Eva_IIT2005_T4 Juego escaleras y serpientes

1Eva_IIT2013_T3 Juego Semillero

Solución propuesta: s1Eva_IIT2013_T3 Juego Semillero

2Eva_IIT2008_T1 Carrera de caracoles

Solución propuesta:  s2Eva_IIT2008_T1 Carrera de caracoles

Ejercicios complementarios

1Eva_IT2007_T1 Juego Tiro al Blanco con Dardos

Solución propuesta: s1Eva_IT2007_T1 Juego Tiro al Blanco con Dardos

1Eva_IIT2002_T3 Conjetura de Ullman

Solución propuesta: s1Eva_IIT2002_T3 Conjetura de Ullman

1Eva_IIT2006_T2 Dígito verificador de cuenta

Solución propuesta: s1Eva_IIT2006_T2 Dígito verificador de cuenta

1Eva_IIT2003_T4 Juego con icosaedros

Solución propuesta:  s1Eva_IIT2003_T4 Juego con icosaedros