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 :

[Débutant][Conception] Modéliser une pile d'entiers


Sujet :

Java

  1. #41
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Points : 62
    Points
    62
    Par défaut
    Tu t'es cassé la tête Phillippe Au lieu d'utiliser des compteurs et des tableaux pour avancer dans tes boucles, tu aurais du passer par 2 objets Pile_Entier

    Tu initialise ta première boucle comme suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for ( PileEntier Pile1=this;Pile1!=null;Pile1=Pile1.getSuivant())
    tu fais un get valeur sur une première variable

    Ensuite, c'est là que ca se joue, tu initialise ta seconde boucle sur l'objet suivant de la première, tu éviteras ainsi les doublons et les recherche inversée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for ( PileEntier Pile2=Pile1.getSuivant();Pile2!=null;Pile2=Pile2.getSuivant())
    et tu fait un get valeur sur une seconde variable

    sinan, c'est pas bien de sécher les cours

  2. #42
    Membre actif
    Inscrit en
    Janvier 2005
    Messages
    451
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 451
    Points : 287
    Points
    287
    Par défaut
    salut alexino, ta methode marche aussi, c'est celle que j'avais retenue en premier... mais à priori avec un tableau c'est beaucoup moins lourd pour la machine.

    N'oublie pas d'optimiser ta procedure : rajoute une condition de sortie à tes 2 boucles des lors que tu trouves un doublon,

  3. #43
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par philippe123
    salut alexino, ta methode marche aussi, c'est celle que j'avais retenue en premier... mais à priori avec un tableau c'est beaucoup moins lourd pour la machine.

    N'oublie pas d'optimiser ta procedure : rajoute une condition de sortie à tes 2 boucles des lors que tu trouves un doublon,
    ouais, c'est ce que j'ai fait pour le premier exo...Mais j'ai voulu faire une recherche sans arrêt dans le Pile-Entier (pour avoir les deux )


    Sinan, j'ai un petit soucis pour le dernier élément inséré, j'ai fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public String dernier()  
       {
        if (vide())
         {return "Pas d'élément inséré";}  
         else
        {return "" + valeur; }
       }
    Le seul soucis, c'est qu'il me retourne à chaque fois le premier élément inséré :'(

    Une idée comment résoudre ça ?

  4. #44
    Membre actif
    Inscrit en
    Janvier 2005
    Messages
    451
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 451
    Points : 287
    Points
    287
    Par défaut
    Citation Envoyé par Alexino2
    Sinan, j'ai un petit soucis pour le dernier élément inséré, j'ai fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public String dernier()  
       {
        if (vide())
         {return "Pas d'élément inséré";}  
         else
        {return "" + valeur; }
       }
    Le seul soucis, c'est qu'il me retourne à chaque fois le premier élément inséré :'(

    Une idée comment résoudre ça ?


    faut que tu navigues d'objet en objet avec la methode getsuivant jusqu'à que ton getsuivant = null
    et apres tu renvois ta valeur car tu es sur le dernier element donc le dernier insere dans la pile

    de plus si tu veux renvoyer un string et que tu as un entier utilises :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return String.valueOf(ma_variable_entiere)
    c'est + propre que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return "" + ma_variable_entiere

  5. #45
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par philippe123

    faut que tu navigues d'objet en objet avec la methode getsuivant jusqu'à que ton getsuivant = null
    et apres tu renvois ta valeur car tu es sur le dernier element donc le dernier insere dans la pile

    de plus si tu veux renvoyer un string et que tu as un entier utilises :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return String.valueOf(ma_variable_entiere)
    c'est + propre que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return "" + ma_variable_entiere
    Yep c'est aussi ce que j'ai pensé à faire...mais après j'ai un autre soucis :
    Si je navigue d'ojet en objet, je dois changer ma méthode en type Pile_Entier, mais à ce moment là, impossible de retourner l'attribut "valeur" qui est elle, est de type integer :'( Et il me semble que le Getsuivant n'est utilisable qu'en type Pile_Entier.

    Si tu me trouve une méthode qui me retourne "valeur" depuis une méthode de type Pile_Entier et l'afficher en entier, je suis preneur

    PS : le toString ni le void ne marche hein

  6. #46
    Membre actif
    Inscrit en
    Janvier 2005
    Messages
    451
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 451
    Points : 287
    Points
    287
    Par défaut
    j'ai rien compreis à ce que tu demandes!

    je te donne un exemple quand meme...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
       public int dernier_insere() // renvoit le dernier insere
       {
    	  Pile_entier p = this;
     	  while (p.suivant != null) p = p.suivant;
     	  return p.valeur;
       }
    je sais pas si ca reponds à ta question?

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. [Débutant] Conception d'une GUI avec PyQt
    Par Franck.H dans le forum EDI/RAD
    Réponses: 4
    Dernier message: 14/04/2011, 17h21
  2. [Débutante]Conception d'une IHM
    Par asie86 dans le forum Architecture
    Réponses: 6
    Dernier message: 07/05/2008, 16h27
  3. débutante : concept de modélisation
    Par juglachant dans le forum Access
    Réponses: 2
    Dernier message: 04/01/2007, 10h12
  4. Réponses: 3
    Dernier message: 12/10/2006, 16h39
  5. Réponses: 2
    Dernier message: 10/10/2006, 12h38

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