Partage
  • Partager sur Facebook
  • Partager sur Twitter

convertir

9 mars 2022 à 15:12:32

def dsatur(g):
    n = np.shape(g)[0]
    couleur = n*[0]
    
    #liste des sommets par ordre de degrés décroissants
    sommets_ord = tri_degre(g,True)
    
       
    #tant qu'il y a des sommets sans couleur    
    while 0 in couleur:
   
        #recherche du sommet à colorer, de degré de saturation maximum
        dsat = n*[0]
        degre_sat_max = 0
        sommetchoisi = sommets_ord[0]
        
        for i in sommets_ord:
            
            #si le sommet i est sans couleur
            if couleur[i]==0:

                vois = voisins(g,i)
               
                #calcul du degré de saturation du sommet i
                couleurvois = []
                for k in vois:
                    if couleur[k]>0:
                        couleurvois = couleurvois+[couleur[k]]
                dsat[i] = len(np.unique(couleurvois))
                
                #le sommet i est-il de degre de saturation maximum ?
                if dsat[i]>degre_sat_max :
                    degre_sat_max = dsat[i]
                    sommetchoisi = i
        
        #couleur des voisins du sommet choisi
        vois_sommetchoisi = voisins(g,sommetchoisi)
        couleurvois_sommetchoisi = []    
        for k in vois_sommetchoisi:
            couleurvois_sommetchoisi = couleurvois_sommetchoisi+[couleur[k]]        
        
        #choix de la plus petite couleur non présente chez les voisins du sommet choisi
        j=1
        while j in couleurvois_sommetchoisi:
            j=j+1
            
        #coloration du sommet choisi avec la couleur trouvée ci-dessus
        couleur[sommetchoisi]=j

    return couleur
 

  • Partager sur Facebook
  • Partager sur Twitter
9 mars 2022 à 15:30:09

Et ?

En tout cas, sympa comme post :-°

  • Partager sur Facebook
  • Partager sur Twitter

On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

9 mars 2022 à 15:47:50

Tiens donc, ça compile pas ?

Could not execute the program
Compiler returned: 1
Compiler stderr
<source>:1:1: error: unknown type name 'def'
    1 | def dsatur(g):
      | ^~~
<source>: In function 'dsatur':
<source>:1:14: error: expected declaration specifiers before ':' token
    1 | def dsatur(g):
      |              ^
<source>:5:6: error: invalid preprocessing directive #liste
    5 |     #liste des sommets par ordre de degrés décroissants
      |      ^~~~~
<source>:9:6: error: invalid preprocessing directive #tant
    9 |     #tant qu'il y a des sommets sans couleur
      |      ^~~~
<source>:9:13: warning: missing terminating ' character
    9 |     #tant qu'il y a des sommets sans couleur
      |             ^
<source>:12:10: error: invalid preprocessing directive #recherche
   12 |         #recherche du sommet à colorer, de degré de saturation maximum
      |          ^~~~~~~~~
<source>:19:14: error: invalid preprocessing directive #si
   19 |             #si le sommet i est sans couleur
      |              ^~
<source>:24:18: error: invalid preprocessing directive #calcul
   24 |                 #calcul du degré de saturation du sommet i
      |                  ^~~~~~
<source>:31:18: error: invalid preprocessing directive #le
   31 |                 #le sommet i est-il de degre de saturation maximum ?
      |                  ^~
<source>:36:10: error: invalid preprocessing directive #couleur
   36 |         #couleur des voisins du sommet choisi
      |          ^~~~~~~
<source>:42:10: error: invalid preprocessing directive #choix
   42 |         #choix de la plus petite couleur non présente chez les voisins du sommet choisi
      |          ^~~~~
<source>:47:10: error: invalid preprocessing directive #coloration
   47 |         #coloration du sommet choisi avec la couleur trouvée ci-dessus
      |          ^~~~~~~~~~
<source>:1:5: warning: type of 'g' defaults to 'int' [-Wmissing-parameter-type]
    1 | def dsatur(g):
      |     ^~~~~~
<source>:1:5: warning: unused parameter 'g' [-Wunused-parameter]
<source>:51: warning: control reaches end of non-void function [-Wreturn-type]

Si tu veux essayer de reproduire ce code en C, dis-le clairement !

  • Partager sur Facebook
  • Partager sur Twitter
9 mars 2022 à 18:10:35

C'est la première fois que je vois du C qui ressemble à du Python. :)

-
Edité par PierrotLeFou 9 mars 2022 à 18:14:01

  • Partager sur Facebook
  • Partager sur Twitter

Le Tout est souvent plus grand que la somme de ses parties.

9 mars 2022 à 19:54:19

Bonjour,

Manquement global aux règles

Votre message enfreint beaucoup de règles basiques du forum à tel point qu'il serait fastidieux de les énumérer dans ce message. Je vous invite donc à lire de toute urgence les règles générales du forum ainsi que la Charte de Bonne Conduite et les éventuelles règles additionnelles de la section du forum dans laquelle vous postez, visibles parmi les sujets épinglés lorsqu'il y en a.

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter