Arbre généalogique en java

cs_alfra Messages postés 1 Date d'inscription mercredi 16 juillet 2008 Statut Membre Dernière intervention 24 mars 2010 - 24 mars 2010 à 14:47
cs_Mrlaurent90 Messages postés 1 Date d'inscription lundi 15 novembre 2010 Statut Membre Dernière intervention 27 novembre 2010 - 27 nov. 2010 à 13:09
bonjour je suis débutante en java et j'ai un projet :réaliser un arbre généalogique en java.
j'ai essayé de faire un code mais le résultat s'affiche verticalement et sans précision.
je voudrai que vous m'aider à afficher l'image même de l'arbre et à rendre les données persistante sur le disque :en fichier texte.je voudrais avoir la possibilité d'ajouter un enfant avec toutes les coordonnées...bref faites moi une correction.

merci pour tout.
voici mon code:


package arbre;
import java.util.*;


public class Arbre {
private Vector fils ; // references des fils stockes dans l’ordre d’ajout
//private Arbre father; // reference du pere du fils courant
private String value; // reference de la valeur
public Arbre(String val, Arbre f){
value=val;
//father=f;
fils=new Vector();

}
public Arbre(String val) {
this.value = val;
fils = new Vector();
}

public String getValue() {
return this.value;
}

public void ajouteFils(Arbre t) {
if (!(this.fils.contains(t))) {
this.fils.add(t);
}
}

public void setValue(String val) {
this.value = val;
}

public Arbre donneFils(int n) {
if (n >= 0 && n < getFilsSize())
return this.fils.get(n);
return null;
}

public int getFilsSize() {
return this.fils.size();
}

public ArbreIterator elements() {
return new ArbreIterator();

}

public void parcours() {
System.out.println(getValue());
ArbreIterator list = elements();
while (list.hasNext()) {
((Arbre) list.next()).parcours();
}
}

private class ArbreIterator implements Iterator {
int cursor;
int lastRet = -1;

public boolean hasNext() {
return cursor != getFilsSize();
}

public Arbre next() {
int i = cursor;
if (i >= getFilsSize())
throw new NoSuchElementException();
cursor = i + 1;
return donneFils(lastRet = i);

}

public void remove() {
if (lastRet == -1)
throw new IllegalStateException();
fils.remove(lastRet);
cursor = lastRet;
lastRet = -1;
}
}

}
package arbre;
public class Application {
public static void main(String a[] ) {
Arbre a1=new Arbre(new String("a1"),null);
Arbre a2=new Arbre(new String("a2"),a1);
Arbre a3=new Arbre(new String("a3"),a1);
Arbre a4=new Arbre(new String("a4"),a1);
Arbre a5=new Arbre(new String("a5"),a1);
Arbre a6=new Arbre(new String("a6"),a2);
Arbre a7=new Arbre(new String("a7"),a2);
Arbre a8=new Arbre(new String("a8"),a2);
Arbre a9=new Arbre(new String("a9"),a5);
Arbre a10=new Arbre(new String("a10"),a5);
a1.ajouteFils(a2); a1.ajouteFils(a3); a1.ajouteFils(a4);
a2.ajouteFils(a6); a2.ajouteFils(a7); a2.ajouteFils(a5);
a4.ajouteFils(a8);
a5.ajouteFils(a9); a5.ajouteFils(a10);
a1.parcours();

}

}

1 réponse

cs_Mrlaurent90 Messages postés 1 Date d'inscription lundi 15 novembre 2010 Statut Membre Dernière intervention 27 novembre 2010
27 nov. 2010 à 13:09
Bonjour as tu avancé ton projet ? puis je savoir ou tu en est ?
0
Rejoignez-nous