Vote des utilisateurs
0
0
Détails
Licence : Freeware
Mise en ligne le 1er décembre 2015
Plate-forme :
Windows
Langue : Français
Référencé dans
Navigation
PR0DIAT production diatonique
PR0DIAT production diatonique
Développement diatonique de la gamme de Do majeure, en code source python
Cher Robot,
Pourquoi cet ésotérisme ?
Lorsque l'on a un objet chat on le référence avec le nom chat ou, à la rigueur, felix mais pas igmja.
Je me suis permis ce corrigé:
Je ne met pas de cotation, c'est dimanche.
Pourquoi cet ésotérisme ?
Lorsque l'on a un objet chat on le référence avec le nom chat ou, à la rigueur, felix mais pas igmja.
Je me suis permis ce corrigé:
| Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# -*- coding: utf-8 -*-
# Développement diatonique élémentaire
# Version 1 : Calculer les modulations majeures
# pr0diat zéro
diatoniques = ['C','D','E','F','G','A','B'] # Notes diatoniques
majeures = [1,1,0,1,1,1,0] # Formule majeure
degres = [0,1,2,3,4,5,6] # Degrés modal
dieses = [' ','+','x','^','+^','x^'] # Altérations augmentées
bemols = [' ','°*','-*','*','°','-'] # Altérations diminuées
degre = 0
for degre in degres:
# Une tournée produit une tonalité modale de 7 notes
tonal = degres[degre]
ton_cumule = delta_tonal = maj = 0
for maj in degres:
forme_majeur = majeures[maj]
forme_modale = majeures[tonal]
forme_tonale = diatoniques[tonal]
ton_cumule += delta_tonal
# Calcul tonal PAS/PAS
delta_tonal = forme_modale - forme_majeur
alter = transition = ton_cumule
if transition > 0:
alteration = dieses[alter]
elif transition < 0:
alteration = bemols[alter]
else:
alteration = bemols[alter]
transition += ton_cumule
tonal += 1
if tonal > 6:
tonal = 0
print ("alteration, maj, forme_tonale ",alteration, maj + 1, forme_tonale)
print ("___", degre + 1) |
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.