Saltar a contenido

Parcialito 1 - 2023a - Tema 1#

Ejercicio 1#

Se requiere implementar una función que reciba una cadena de texto y cuente cuántas veces aparece cada una de las vocales en esa cadena. La función debe retornar un diccionario que guarde la frecuencia de aparición de cada vocal. Importante: No usar el método .count() de python. El prototipo de la función es el siguiente:

def freq_vocals(cadena: str) -> dict:
    # completar docstring y código
  1. Dibuje el diagrama de flujo de la función.
  2. Escriba el código de la función con su correspondiente docstring.

Ejercicio 2#

Un archivo TSV (Tab Separated Value) es un archivo, similar al CSV, que está escrito del siguiente modo:

First Name\tLast Name\tCountry\tDate of Birth
Lewis\tHamilton\tUnited Kingdom\t1985
Max\tVerstappen\tBelgium\t1997
Charles\tLeclerc\tMonaco\t1997

donde cada espacio es un caracter tabular (\t); en ASCII es el código 09 (distinto al caracter espacio).

Escribir una función que genere un archivo TSV a partir de una secuencia de secuencias con datos organizados como en el ejemplo a continuación.

Ejemplo:

info = [
  ("First Name","Last Name","Country","Date of Birth"),
  ("Lewis","Hamilton","United Kingdom","1985"),
  ("Max","Verstappen","Belgium","1997"),
  ("Charles","Leclerc","Monaco","1997")
]

Ejercicio 3#

Se necesita implementar una función que muestre en pantalla una pregunta con sus opciones y permita que el usuario ingrese la opción elegida. La función debe retornar la opción ingresada por el usuario. Para ello se dispone de un diccionario con toda la información necesaria para esa pregunta: el enunciado de la pregunta, las opciones a mostrar y la respuesta correcta a cada pregunta. Por ejemplo:

pregunta = {'enunciado': '¿En que año el hombre llegó a la luna?',
            'opciones': {'1': '1959','2': '1787', '3': '1969', '4': '1979'},
            'respuesta': '3'}

Implemente una función quiz(question: dict) -> str:, donde question es la estructura de la pregunta que se quiere mostrar. Considere que el número de opciones puede ser variable (es decir no siempre serán 4 opciones). La salida por consola debe verse como en el siguiente ejemplo (> es el prompt que indica la espera del ingreso de una opción):

output:

¿En que año el hombre llegó a la luna?
1. 1959
2. 1797
3. 1969
4. 1979
>

Ejercicio 4#

Implemente una función que reciba dos matrices A y B de dimensión arbitraria y devuelva una matriz con la suma de ambas C = A + B. El prototipo debe ser sum_matrix(A, B). Escriba además el código principal donde se definan las dos matrices A y B (puede usar las de los ejemplos) y luego las imprima junto a la matriz C resultante.

output:

A = [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]]
B = [[3.0, 4.0, 5.0], [5.0, 6.0, 7.0]]
C = [[4.0, 6.0, 8.0], [9.0, 11.0, 13.0]]