Saltar al contenido

Solucionador de intervalos de música

Posterior a consultar expertos en el tema, programadores de deferentes áreas y maestros hemos dado con la solución al problema y la dejamos plasmada en este post.

Solución:

Python 2.7, 155 bytes

s='second unison third fourth sixth fifth seventh octave Diminished Augmented'.split()
def f(n,c):x=0xDE9CB87561430>>[4,8][c>'h']*n;print s[x%2+8],s[x/2%8]

Python 2, 149 bytes

def f(n,c):n*=1+(c>'h');print(n-6)%13%2*"Diminished"or"Augmented",'octave seventh sixth fifth fourth third second unison'.split()[71056674174>>3*n&7]

Primero, los pasos completos se convierten en medios pasos.

Después, Diminished contra Augmented está impreso. Estos se alternan para adyacentes n excepto eso n=5 y n=6 dan lo mismo, lo que se logra colocándolos primero a través de un límite módulo un número impar.

Finalmente, se imprime la distancia, calculada a través de una tabla de búsqueda de tres bits. Esto es más corto que hacer int('6746543230210'[n]).

Reseñas y calificaciones del tutorial

Si tienes algún titubeo o forma de perfeccionar nuestro enunciado te invitamos ejecutar una referencia y con placer lo estudiaremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *