Bonjour Patrick,
Je suis encore avec graphes.mod.
Première chose :
Pour mon projet j'ai eu besoin de deux variables suplémentaires :
- Code: Tout sélectionner
Recup_de_donnees = [
LP:=[for $I from 1 to NbSommets do
for $J from 1 to NbSommets do
if StrComp(GetStr(["poids", I ,"_" , J]),"") then 0
else GetStr(["poids", I ,"_" , J])
fi,
od,
od],
LN:=[for $I from 1 to NbSommets do
Str(["Sommet",I])//"", GetStr(["Sommet", I]) ,""
od],
NewVar("ListePoids",LP),
NewVar("ListeNom",LN),
]
qui renvoient respectivement la liste des poids dans l'ordre des sommets et la liste des noms des sommets, je pense qu'elles peuvent avoir leur intérêt dans le modèle.
Il y a aussi une erreur sur l'édition de la matrice par la souris, (je crois qu'au début on avait déjà eu a faire à ce pb, mais je sais plus pourquoi)
Prenons un graphe d'ordre 4.
Lorsque l'on rajoute une arête par exemple entre le sommet d'index 2 et le sommet d'index 4.
Le terme a_{2,4} est mise a jour mais pas le terme a_{4,2}. Pas de pb pour le dessin mais pour un graphe non oriente la matrice doit être symétrique.
Si elle ne l'est pas, on ne peut pas exploiter les résultats.
Peut-être pour une meilleure utilisation du modèle, on pourrait demander à l'ouverture du modèle :
- le nombre de sommet ;
- le type du graphe : O pour orienté ou NO pour non orienté ;
ce qui permet de gérer dès le départ la symétrie de la matrice.
Qu'en penses-tu ?