Escales i acords

En música amb afinació temperada, la octava es subdivideix en 12
semitons d’igual interval. Per raons històriques, només 7 notes tenen
nom, Do Re Mi Fa Sol La Si (les notes naturals), així que per nomenar
els 12 forats es van idear les alteracions, ♯ (sostingut o semitò a
dalt) i ♭ (bemoll o semitò abaix). D’aquesta manera el Mi♯ és un so que
sona una semitò per sobre del Mi.

Hi ha tons que, en afinació temperada, poden rebre diversos noms. Així,
per exemple, Mi♯ dóna nom al mateix to que Fa. A aquests casos se’ls
anomena notes enharmòniques. En un enharmònic no es pot barrejar
alteracions diferents: és possible el Mi♯♯ però no Mi♯♭.

Escala cromàtica

L’escala cromàtica és aquella que es genera donant nom als 12 semitons a
partir de les 7 notes naturals i fins a un màxim de 2 alteracions per
generar la màxima quantitat de enharmònics. Les notes naturals,
començant pel Do, se situen en els tons 0, 2, 4, 5, 7, 9, 11. Des
d’aquí, i aplicant les dues alteracions, es generen tots els enharmònics
possibles per als 12 tons.

Dissenya una funció @escala_cromatica(notas)@ que, donada una llista
@notas@ que conté els noms (str) de les notes naturals en les seves
posicions respectives, i el string buit en la resta, retorni la una
llista de llistes que contingui l’escala cromàtica usant el nom de les
notes naturals definit en la llista @notas@.

Nota natural

És freqüent necessitar conèixer la nota natural associada a un nom de
nota, o el que és el mateix, el nom de la nota sense les alteracions.

Dissenya una funció Diseña una función @nota_natural(nota)@ que, donat
un str @nota@, retorni la seva nota natural.

Nombre d’una nota

Donat el nom d’una nota, pot ser interessant conèixer quin dels 12 tons
de l’escala cromàtica anomena.

Dissenya una funció @nota_a_numero(nota, escala)@ que, donat un str
@nota@ amb el nom d’una nota, i una llista de llistes @escala@ que conté
una escala cromàtica en què @nota@ existeix, retorni el nombre del to de
l’escala cromàtica a què @nota@ fa referència.

Interval entre notes

Interval és la distància en relació a una escala entre dues notes
musicals (incloent els extrems) mesurat en semitons.

Dissenya una funció @intervalo(nota1, nota2, escala)@ que, donats dos
str @nota1@ i @nota2@ que representen el nom de dues notes, i una llista
de llistes @escala@ que conté una escala cromàtica on ambdues notes
@nota1@ i @nota2@ existeixen, retorni un int amb l’interval en semitons
que hi ha des @nota1@ fins @nota2@.

Enharmòniques

Dissenya una funció @enarmonicas(nota, cromatica)@ que, donat un str
@nota@ amb el nom d’una nota, i una llista de llistes @cromatica@ que
conté una escala cromàtica en què @nota@ existeix, retorni una nova
llista amb els noms de totes les seves notes enharmòniques.

Escales diatòniques

Una escala diatònica és una sèrie de 7 notes preses ordenadament del
total de 12 de l’escala cromàtica a partir d’una tònica i seguint un
patró de salts de semitons diatònics (després d’un Do mai hi haurà un
Do♯ sinó Re♭) de manera que sempre estiguin representades en ordre les 7
notes naturals una única vegada cadascuna, ja sigui en el seu estat
natural o alterades.

Dissenya una funció @escala_diatonica(tonica, modo, cromatica)@ que,
donat un str @tonica@ amb el nom d’una nota, una llista de int @modo@, i
una llista de llistes @cromatica@ que conté una escala cromàtica en què
@tonica@ existeix, retorni una llista de 7 str que contingui l’escala
diatònica que comenci per @tonica@ seguint el patró de salts diatònics
indicat per @modo@.

Acords tríada

Un acord tríada consisteix en un conjunt de tres notes diferents que
constitueixen una unitat harmònica i reben el nom de tònica, tercera i
cinquena, perquè l’acord el formen les notes 0, 2 i 4 de l’escala
diatònica corresponent.

Dissenya una funció @acorde_triada(tonica, modo, cromatica)@ que, donat
un str @tonica@ amb el nom d’una nota, una llista @modo@ amb un patró de
salts de semitons, i una llista de llistes @cromatica@ que conté una
escala cromàtica en què @tonica@ existeix, retorni una llista amb les
tres notes de l’acord tríada extretes de la escala diatònica per
@tonica@ i @modo@.

Exemple de sessió

Informació del problema

Autoria: InfBesos

Generació: 2026-01-25T15:45:44.524Z

© Jutge.org, 2006–2026.
https://jutge.org
