IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Algo de floyd


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 95
    Par défaut Algo de floyd
    //Bonsoir, ce programme -sans erreur- ne retourne pas de résultat je ne sais //pourquoi ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    class ff{ 
    	  int[][] c = { 
    	    {0, 3, 8, M, -4}, 
    	    {M, 0, M, 1, 7}, 
    	    {M, 4, 0, M, M}, 
    	    {2, M, -5, 0, M}, 
    	    {M, M, M, 6, 0} 
    	  }; 
    	  static final int M = Integer.MAX_VALUE; 
    		public int[][] getc() { 
    			return c; 
    		} 
    	  static int[][] floydm(int[][] c) { 
    		    int n = c.length; 
    		    int[][] d = new int[n][n]; 
    		    for (int i=0; i<n; i++) { 
    		      for (int j=0; j<n; j++) { 
    		        d[i][j] = c[i][j]; 
    		        } 
    		    } 
    		    for (int k=0; k<n; k++) { 
    		      for (int i=0; i<n; i++) { 
    		        for (int j=0; j<n; j++) { 
    		          int dik = d[i][k], dkj = d[k][j]; 
    		          if (dik == M || dkj == M) continue; 
    		          int u = dik + dkj; 
    		          if (u < d[i][j]) { 
    		            d[i][j] = u; 
    		          } 
    		        } 
    		      } 
    		    } 
    		    return d; 
    		  }} 
    public class floyd {  
    	public static void main(String[] args) {  
    		ff matrice ; 
    	matrice =new ff(); 
    		ff.floydm(matrice.getc()); 
    	} 
    	}

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Parce qu'il n'y a aucune instruction lui demandant de retourner un résultat...

    D'ailleurs, que veux-tu dire par "retourner" ? Afficher dans la console ?

    Si c'est le cas, il faut utiliser "System.out.print()" ou "System.out.println()" à des endroits judicieusement placés.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 54
    Par défaut
    Comme l'a dit CyberChouan, tu ne récupères pas le résultat de ta méthode floydm ! Récupère le résultat et printe le dans la console.

    Donc ajoute:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public static void main(String[] args) {  
       ff matrice ; 
       matrice =new ff(); 
       int[][] res = ff.floydm(matrice.getc()); 
     
       // Afficher le résulat
       for(int[] row : res){
          System.out.println(Arrays.toString(row));
       }
    }

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 95
    Par défaut
    j'ai essayer le code que vous m'avez proposer et ça bug, dois-je faire des modifications ? car je n'es compris sauf System.out.println()

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 54
    Par défaut
    Qu'est-ce qui bugge exactement ? Quel est le message d'erreur ?

Discussions similaires

  1. [Algo] Floyd-Warshall et matrice des distances
    Par laurent_m dans le forum Langage
    Réponses: 1
    Dernier message: 24/10/2014, 10h31
  2. Implémenter l'algo de FLOYD
    Par demando77 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 03/05/2008, 20h15
  3. Algo de Floyd et Steinberg
    Par sandball22 dans le forum Images
    Réponses: 5
    Dernier message: 23/11/2006, 20h42
  4. Cherche l'algo crc 16 bits
    Par icepower dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 21/08/2002, 13h27
  5. Recherche algo tree
    Par Anonymous dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 24/05/2002, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo