Probleme en java
Résolu
bouchrot
Messages postés
394
Statut
Membre
-
bouchrot Messages postés 394 Statut Membre -
bouchrot Messages postés 394 Statut Membre -
Bonjour,
salut ,j'ai un problème en java (ajouter un élément X a la fin des N cases remplies d'un tableau ).
voici ma solution
package tabl.ajout_element;
import java.util.*;
public class TablAjout_element {
public static void main(String[] args) {
Scanner ajouter = new Scanner(System.in);
int tab[],i,t;
System.out.println("Entrez la taille de tableau");
t = ajouter.nextInt();
tab = new int[t];
for(i=0;i<t;i++){
System.out.println("tab[]:"+(i+1));
tab[i] = ajouter.nextInt();
}
for(i=0;i<t;i++){
System.out.println("tab[i]:"+tab[i]);
}
int tabx[];
tabx = new int[1];
for(i=0;i<t;i++){
System.out.println("tab[]:"+tab[i]+tabx[1]);
}
}
}
s'il vous plait que quelqu'un m'aide a résoudre se problème
salut ,j'ai un problème en java (ajouter un élément X a la fin des N cases remplies d'un tableau ).
voici ma solution
package tabl.ajout_element;
import java.util.*;
public class TablAjout_element {
public static void main(String[] args) {
Scanner ajouter = new Scanner(System.in);
int tab[],i,t;
System.out.println("Entrez la taille de tableau");
t = ajouter.nextInt();
tab = new int[t];
for(i=0;i<t;i++){
System.out.println("tab[]:"+(i+1));
tab[i] = ajouter.nextInt();
}
for(i=0;i<t;i++){
System.out.println("tab[i]:"+tab[i]);
}
int tabx[];
tabx = new int[1];
for(i=0;i<t;i++){
System.out.println("tab[]:"+tab[i]+tabx[1]);
}
}
}
s'il vous plait que quelqu'un m'aide a résoudre se problème
A voir également:
- Probleme en java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Waptrick java voiture - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
1 réponse
Salut,
Je ne suis pas certain de comprendre ce que tu veux faire exactement.
Mais ce qui est certain, c'est qu'on ne peut rien ajouter à un tableau dont tous les éléments sont remplis. Il n'est pas possible d'augmenter la taille d'un tableau.
Voici une solution, que je n'aime pas beaucoup:
On a le tableau tab qui est plein et on veut ajouter un nouvel élément.
Il faut déclarer un nouveau tableau tabx de taille = celle de tab +1 (si on ne veut ajouter qu'un élément).
On copie tous les éléments de tab dans tabx et on y ajoute le nouvel élément.
Ton code devient:
Je pense qu'il serait beaucoup mieux d'utiliser une ArrayList<....> (import java.util.ArrayList;)
qui permet de créer un tableau sans la contrainte de la taille...
--
Plus on apprend... plus on se rend compte qu'on ne connaît pas grand-chose.
Je ne suis pas certain de comprendre ce que tu veux faire exactement.
Mais ce qui est certain, c'est qu'on ne peut rien ajouter à un tableau dont tous les éléments sont remplis. Il n'est pas possible d'augmenter la taille d'un tableau.
Voici une solution, que je n'aime pas beaucoup:
On a le tableau tab qui est plein et on veut ajouter un nouvel élément.
Il faut déclarer un nouveau tableau tabx de taille = celle de tab +1 (si on ne veut ajouter qu'un élément).
On copie tous les éléments de tab dans tabx et on y ajoute le nouvel élément.
Ton code devient:
import java.util.*;
public class TablAjout_element {
public static void main(String[] args) {
Scanner ajouter = new Scanner(System.in);
int tab[],i,t;
System.out.print("Entrez la taille de tableau: ");
t = ajouter.nextInt();
System.out.println("t = " + t);
tab = new int[t];
for(i=0;i<t;i++){
// On enregistre dans tab les t éléments saisis
System.out.print("Entrez la valeur de l'élément " + i + " : ");
tab[i] = ajouter.nextInt();
}
for(i=0;i<t;i++){
// Liste du contenu de tab
System.out.println("tab[" + i + "]:"+tab[i] + "\n");
}
// On déclare un nouveau tableau >> tabx de taille celle de tab + 1
// pour qu'on puisse y stoker les éléments de tab plus le nouvel élément (un seul dans le cas présent)
int tabx[];
tabx = new int[t +1];
for(i=0;i<t;i++){
tabx[i] = tab[i]; // 0n copie tous les éléments de tab dans tabx
}
System.out.print("Entrez la valeur de l'élément " + i + " : ");
tabx[i] = ajouter.nextInt();
for(i=0;i<tabx.length;i++){
System.out.println("tabx[" + i + "]:" + tabx[i] + "\n");
}
}
}
Je pense qu'il serait beaucoup mieux d'utiliser une ArrayList<....> (import java.util.ArrayList;)
qui permet de créer un tableau sans la contrainte de la taille...
--
Plus on apprend... plus on se rend compte qu'on ne connaît pas grand-chose.
a propos de cette Arraylist je ne connais pas si tu veux me donner une idée ça sera joli de ta part
/** Créé un nouveau tableau en ajoutant x à la fin de tab */ public static int[] ajouter(int[] tab, int x) { int n = tab.length; int[] tab2 = new int[n+1]; for (int i=0; i<n; i++) tab2[i]=tab[i]; tab2[n]=x; } /** Ajoute x à la fin de la liste */ public static void ajouter(ArrayList<Integer> liste, int x) { liste.add(x); }C'est clairement plus simple avec une liste non ? Et tellement plus propre en découpant les méthodes.