[aide ]problem java !
Résolu
Peter
-
Peter -
Peter -
Bonjour ,
l exercice consiste a creer un programme qui gere les ensembles mathematiques (des entiers ) !
on doit tout d abord ecrir un constructeur qui definie combien d element peut contenir l ensemble qui doit etre vide au debut !
voila ce ke j ai pu ecrir :
public class Ensemble {
static int gr=0;
static int tab[] ;
// le constructeur qui definie normalement un ensemble vide !! nn ?
public Ensemble(int gr)
{
tab=new int[gr];
}
public static void main(String[] args) {
inserer(18);
inserer(2);
inserer (9);
inserer(10);
inserer(113) ;
reader () ;
}
public static void inserer (int elem) {
gr++;
new Ensemble(gr) ;
for (int i=0 ; i<tab.length ; i++ )
Ensemble.tab[i]= elem ;
}
public static void reader()
{
for(int i = 0; i < tab.length ; i++)
System.out.println("A l'emplacement " + i +" du tableau nous avons = " + tab[i]);
}
le programme compile mais il perd toutes les precedentes donnees , voila ce que j obtien :
(ce qui est sur que le tableau grandi peu a peu , ce qui n est pas mal , nn ? )
A l'emplacement 0 du tableau nous avons = 113
A l'emplacement 1 du tableau nous avons = 113
A l'emplacement 2 du tableau nous avons = 113
A l'emplacement 3 du tableau nous avons = 113
A l'emplacement 4 du tableau nous avons = 113
Ps : j ai cherche sur internet , el semble que la meilleur solution c est d utiliser Arraylist mais le probleme c est qu on ne doi en aucun cas utliser java.util !!
Si vous pouviez peut etre m aider !! merci !!1
l exercice consiste a creer un programme qui gere les ensembles mathematiques (des entiers ) !
on doit tout d abord ecrir un constructeur qui definie combien d element peut contenir l ensemble qui doit etre vide au debut !
voila ce ke j ai pu ecrir :
public class Ensemble {
static int gr=0;
static int tab[] ;
// le constructeur qui definie normalement un ensemble vide !! nn ?
public Ensemble(int gr)
{
tab=new int[gr];
}
public static void main(String[] args) {
inserer(18);
inserer(2);
inserer (9);
inserer(10);
inserer(113) ;
reader () ;
}
public static void inserer (int elem) {
gr++;
new Ensemble(gr) ;
for (int i=0 ; i<tab.length ; i++ )
Ensemble.tab[i]= elem ;
}
public static void reader()
{
for(int i = 0; i < tab.length ; i++)
System.out.println("A l'emplacement " + i +" du tableau nous avons = " + tab[i]);
}
le programme compile mais il perd toutes les precedentes donnees , voila ce que j obtien :
(ce qui est sur que le tableau grandi peu a peu , ce qui n est pas mal , nn ? )
A l'emplacement 0 du tableau nous avons = 113
A l'emplacement 1 du tableau nous avons = 113
A l'emplacement 2 du tableau nous avons = 113
A l'emplacement 3 du tableau nous avons = 113
A l'emplacement 4 du tableau nous avons = 113
Ps : j ai cherche sur internet , el semble que la meilleur solution c est d utiliser Arraylist mais le probleme c est qu on ne doi en aucun cas utliser java.util !!
Si vous pouviez peut etre m aider !! merci !!1
A voir également:
- [aide ]problem java !
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
1 réponse
Salut,
tu as oublié de sauver ton tableau a chaque fois...il te faut creer un tableau temporaire pour sauvergarder le tableau avec les données actuelle sinon tu ré-ecrit apr dessus.
Voici une solution:
et le résultat donne:
tu as oublié de sauver ton tableau a chaque fois...il te faut creer un tableau temporaire pour sauvergarder le tableau avec les données actuelle sinon tu ré-ecrit apr dessus.
Voici une solution:
public class Tableau { static int[] tableau; static int position = 0; public static void main(String[] args) { tableau = new int[position+1]; ajouter(18); ajouter(2); ajouter (9); ajouter(10); ajouter(113) ; afficher() ; } public static void ajouter (int elem) { int[] temp; temp = new int[position+1]; //tu sauves ton tableau actuel for (int i = 0; i < position; i++) { temp[i] = tableau[i]; } tableau = new int[position+1]; for (int i = 0; i <= position; i++) { tableau[i] = temp[i]; } tableau[position] = elem; position++; } static void afficher() { for (int i = 0; i < position; i++) { System.out.println("position : " + i + " valeur : " + tableau[i]); } } }
et le résultat donne:
position : 0 valeur : 18 position : 1 valeur : 2 position : 2 valeur : 9 position : 3 valeur : 10 position : 4 valeur : 113
Peter
Merci bien !!!!