Salta al contenido principal
EVA
  • Página Principal
  • Calendario
  • Más
En este momento está usando el acceso para invitados
Acceder
EVA
Página Principal Calendario
Expandir todo Colapsar todo
  1. Python
  2. Módulo 6
  3. tarea módulo 6

tarea módulo 6

Requisitos de finalización
Apertura: viernes, 27 de noviembre de 2020, 00:00
Cierre: miércoles, 2 de diciembre de 2020, 23:59

Ejercicio 6.1

1. Crear una función que reciba como argumentos una altura inicial y una secuencia de intervalos, y que devuelva una lista con una secuencia de alturas. Las alturas se expresan como número de nota MIDI, y los intervalos en cantidad de semitonos, con valores negativos para los intervalos descendentes.

Por ejemplo:

nota_inicial = 60
secuencia_intervalica = [4, -3, 9, -11]
notas = intervalos_a_secuencia(nota_inicial, secuencia_intervalica)
print(notas)

Resultado:
[60, 64, 61, 70, 59]

2. Crear una segunda función que reciba como argumentos una lista y un diccionario: la lista representa una secuencia de intervalos, y el diccionario sirve para transformar cada intervalo en una secuencia de dos intervalos. La función devuelva la nueva secuencia de intervalos expandida.

Por ejemplo:
secuencia_intervalica = [4, -3, 9, -11]
reglas = {4 : [-3, 9], -3 : [-11, 9], 9 : [4, -3], -11 : [-3, 4]}
secuencia_nueva = linden(secuencia_intervalica, reglas)
print(secuencia_nueva)

Resultado:
[-3, 9, -11, 9, 4, -3, -3, 4]

3. Combinar ambas funciones, para generar una lista de alturas, a partir de una nota inicial, una lista de intervalos y un diccionario de transformación.

En este momento está usando el acceso para invitados (Acceder)
Resumen de retención de datos
Universidad de la República - Uruguay
Desarrollado por Moodle