Certamen 2A, TI 2, 2017-1

Leo Ferres & Rodrigo Trigo UDD

Pregunta 1

Cree la función fechaValida(fecha) que devuelva True si el argumento es una fecha real, o False si no. Ejemplo, "32 de enero" no es válida (no considere bisiestos). La fecha se dará en el siguiente formato: dd/mm/yyyy. Sugerencia: puede usar la función split() de str. Compruebe que ejecute usando su fecha de nacimiento.


In [1]:
##escriba la función aqui##

fechaValida('02/06/2017')


---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-1-22268c32e69e> in <module>()
      1 ##escriba la función aqui##
      2 
----> 3 fechaValida('02/06/2017')

NameError: name 'fechaValida' is not defined

Pregunta 2

Dado el string de su RUT sin guión ni dígito verificador encuentre la $\sum_{i=1}^{n}d_i*i$, donde $n$ es el largo del string, $d$ es cada dígito, y $d_1$ es el último número del RUT.


In [10]:
rut = input("ingrese su rut: ")

##su código va aqui##


ingrese su rut: 1234

Pregunta 3

Cree dos funciones: 1) tirarDado() que devuelva un número $x$ aleatorio $1\leq x \leq 6$, y 2) la función sumar() que lanza dados y finaliza cuando la suma de los dados sea mayor que 10000 y retorna cuántos dados lanzó.


In [19]:
import random
random.seed(int(rut))
##su código va aqui##

Pregunta 4

Otra vez el bendito triángulo. Lo pueden hacer o no? Cree una función que tome como argumento el alto de un triángulo equilátero y lo dibuje usando estrellitas. Por ejemplo, para $h=3$, entonces

  *
 ***
*****

Pregunta 5

Lea el archivo puertos.csv donde aparecen el puerto y el país al que pertenece de la siguiente forma: aarhus;dinamarca. Note que el separador es un punto y coma (";") y que la primer línea tiene el encabezado, el cual no debe ser considerado. Cree un diccionario puertos en el que la llave es el país, y el valor es el número de puertos de ese país.