La console de DOS est vide lors du lancement du programme...

La console de DOS est vide lors du lancement du programme... - Java - Programmation

Marsh Posté le 10-05-2006 à 00:59:33    

En gros tout est dans le titre,
J'ai programmé un Arbre binaire de recherche avec differentes methodes; la compilation s'effectue avec succes (je travaille avec JCreator) mais lorsque je veux lancer ma methode Main, la Console Dos s'affiche mais rien ne s y passe... Meme pas le texte comme quoi on peut appuyer sur une touche pour continuer...
 
D'ou cela vient-il ?
Merci
 
Kriegger

Reply

Marsh Posté le 10-05-2006 à 00:59:33   

Reply

Marsh Posté le 10-05-2006 à 01:40:16    

avant que quelqu'un d'autre la fasse : kadreg, nraynal ou autre --
--> c'est a la 4e ligne![:jar jar]
 
 
[:bouledecristal]
Miroir, mon beau miroir dis moi quel est le code ....
 
[:madameirma]
 
toute blague mise a part, je ne pense pas que quelqu'un puisse t'aider sans meme voir le code [:dawa]
 
 


---------------
Mon feedback
Reply

Marsh Posté le 10-05-2006 à 02:24:59    

C'est un Tp que j'ai à faire.
si quelqu'un est motivé pour tout lire :
 

Code :
  1. public class AbrPers {
  2. private Personne pers ;
  3. private AbrPers gauche ;
  4. private AbrPers droit ;
  5. public AbrPers (Personne x){
  6.     pers=x;
  7.     gauche=null;
  8.     droit=null;
  9. }
  10.    public boolean estVide(){
  11.      return pers==null;
  12.    }
  13.    public Personne getPers(){
  14.     return pers;
  15.    }
  16. public AbrPers getGauche(){
  17.     return gauche;
  18.  }
  19. public AbrPers getDroit(){
  20.     return droit;
  21. }
  22. public int prof() {
  23.  if (estVide())
  24.      return 0;
  25.  else
  26.      return (1 + Math.max(gauche.prof(),droit.prof()));
  27.     }
  28.    
  29. public void inserer(Personne x){
  30.  if(estVide()){
  31.   pers=x;
  32.  }else{
  33.      AbrPers a=this;
  34.      int diff;
  35.      while (true){
  36.        diff=x.getNom().compareTo(pers.getNom());
  37.        if(diff==0) return;
  38.        if(diff<0 && a.getGauche()!=null) a=a.getGauche();
  39.        if(diff>0 && a.getDroit()!=null) a=a.getDroit();
  40.        if (diff<0 && a.getGauche()==null){
  41.         gauche=new AbrPers(x);
  42.        }
  43.        if (diff>0 && a.getDroit()==null){
  44.         droit=new AbrPers(x);
  45.        }
  46.      }
  47.     }
  48. }
  49. public boolean chercher(Personne x){
  50.     if (estVide()) {
  51.         return false;
  52.      }else{
  53.      AbrPers n=this;
  54.      while(true){
  55.          int diff=x.getNom().compareTo(n.getPers());
  56.          if(diff==0)
  57.             return true;
  58.          if(diff<0){
  59.             if(n.getGauche()==null){
  60.              return false;
  61.             }else{
  62.              n=n.getGauche();
  63.             }
  64.          }else if(n.getDroit()==null){
  65.             return false;
  66.           }else{
  67.            n=n.getDroit();
  68.          }
  69.        }
  70.       }
  71. }
  72. public String toString(){
  73.  return toString("(" );
  74. }
  75. public String toString(String s){
  76.  if(estVide()) return s+" )";
  77.  s+=pers.getNom()+" ";
  78.  if(gauche!=null && droit!=null){
  79.   if(gauche.getGauche()!=null){
  80.    s=s+"("+gauche.getPers()+" ";
  81.    s+=gauche.getGauche().toString();
  82.   }else{
  83.    s=s+gauche.getPers()+" ";
  84.   }
  85.   if(droit.getDroit()!=null){
  86.    s=s+"("+droit.getPers().getNom()+" ) ";
  87.    s+=droit.getDroit().toString();
  88.   }else{
  89.    s=s+droit.getPers()+" ) ";
  90.   }
  91.  }else if(gauche==null && droit!=null){
  92.   if(droit.getGauche()!=null || droit.getDroit()!=null){
  93.    s+="()"+droit.toString();
  94.   }else{
  95.    s=s+"()"+droit.getPers()+" ) ";
  96.   }
  97.  }else if(gauche!=null && droit==null){
  98.   if(droit.getGauche()!=null || droit.getDroit()!=null){
  99.    s+="("+gauche.toString();
  100.   }else{
  101.    s+=gauche.getPers()+"()) ";
  102.   }
  103.  }else{
  104.   return s+" )";
  105.  }
  106.  return s;
  107. }
  108. }
  109. public class Personne{
  110. private Comparable nom;
  111. private int age;
  112. public Personne (Comparable nom, int age){
  113.  this.nom=nom;
  114.  this.age=age;
  115. }
  116. public Comparable getNom(){
  117.  return nom;
  118. }
  119. public int getAge(){
  120.  return age;
  121. }
  122. }
  123. public class Prog{
  124. public static void main(String [] args){
  125.  AbrPers a=new AbrPers(new Personne("Marc",25));
  126.  a.inserer(new Personne("Bernard",85));
  127.  a.inserer(new Personne("Sylvie",28));
  128.  a.inserer(new Personne("Alain",36));
  129.  a.inserer(new Personne("David",8));
  130.  a.inserer(new Personne("Marie",12));
  131.  a.inserer(new Personne("Xavier",34));
  132.  a.inserer(new Personne("Roger",22));
  133.  System.out.println(a.toString());
  134.  System.out.println(a.getGauche());
  135.  System.out.println(a.getDroit());
  136.  System.out.println(a.chercher("David" ));
  137.  System.out.println(a.chercher("Maxime" ));
  138.  System.out.println(a.chercher("Ro" ));
  139. }
  140. }

Message cité 1 fois
Message édité par Krieggy le 10-05-2006 à 02:25:45
Reply

Marsh Posté le 10-05-2006 à 03:21:01    

Krieggy a écrit :

C'est un Tp que j'ai à faire.
si quelqu'un est motivé pour tout lire :


évidemment que non..
tu isoles ton problème et tu l'expliques.
90% de chances que tu trouves la réponse toi-même en isolant, d'ailleurs..


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 10-05-2006 à 07:34:40    

Justement... Ca peut venir de pas mal de choses...
Deja le fait est que je n'ai jamais eu ca comme probleme : le programme ne se lance pas en gros. Alors que la compilation marche ...
J'ai remarqué un truc aussi :
si je modifie  getGauche()==null par  getGauche().estVide()   (ainsi que les getDroit() ), ca m'affiche des erreurs: NullException un truc du genre. En me renseignant, j'ai vu que ca voulait dire que je faisait des acces sur un objet qui n'existait pas en gros (des acces sur un null...).
 
En general, le fait que j'ai une console vide, ca vient de quelquechose en particulier?

Message cité 1 fois
Message édité par Krieggy le 10-05-2006 à 07:35:20
Reply

Marsh Posté le 10-05-2006 à 20:48:35    

si jamais tu ne vois vraiment pas d'ou ca peut venir (j'ai pas regarde le code,la j'ai pas le temps :()  
fais des affichages dans la console et tu devrais vite trouver d'ou vient le probleme [:dawa]


---------------
Mon feedback
Reply

Marsh Posté le 10-05-2006 à 20:51:46    

Krieggy a écrit :


si je modifie  getGauche()==null par  getGauche().estVide()   (ainsi que les getDroit() ), ca m'affiche des erreurs: NullException un truc du genre.


 
C'est normal ! Si la méthode getGauche() retourne null (càd pas d'objet), tu ne peux pas utiliser la méthode estVide() sur un null ! Tes deux tests ne sont pas du tout équivalent...


Message édité par post_it le 10-05-2006 à 20:52:40
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed