IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Vote des utilisateurs
0 
0 
Détails
Éditeur : cabviva
Licence : Freeware
Mise en ligne le 1er décembre 2015
Plate-forme : Windows
Langue : Français
Référencé dans
Navigation

PR0DIAT production diatonique

Développement diatonique de la gamme de Do majeure, en code source python
Avatar de VinsS
Expert éminent https://www.developpez.com
Le 05/04/2015 à 17:12
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é:
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)
Je ne met pas de cotation, c'est dimanche.
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.