> Je me demande juste un truc: si ce tableau d'entiers comporte des entiers
> mélangés genre 5 / 4/ 9/ 8/ 3 /2 etc.. est-ce que ta ligne d'initialisation ...fonctionne?
En fait, ça dépend, pour initialiser un tableau tu as 4 choix :
- Le remplir grâce à une valeur fixe, en Java c'est inutile pour remplir un tableau de 0 car à la déclaration d'un tableau d'entier il initialise déjà toutes les cases à 0. Exemple :
//initialisation des valeurs à 2
for (int i = 0; i < tab.length; i++) {
tab[i] = 2;
}
- Le remplir grâce à une fonction mathématique utilisant l'index. En gros à la place du 'i+1' tu peux utiliser des fonctions plus complexes, voici quelques exemples :
//initialisation des valeurs des cases au carrée de l'index (tab[0]=0, tab[1]=1, tab[2]=4 ... tab[9]=81)
for (int i = 0; i < tab.length; i++) {
tab[i] = i*i;
}
//initialisation des valeurs à l'inverse de l'index (exemple pour un tableau de 10 éléments : tab[0]=10, tab[1]=9, tab[2]=8 ... tab[9]=1)
for (int i = 0; i < tab.length; i++) {
tab[i] = tab.length-i;
}
- Le remplir avec des valeurs totalement aléatoires
//initialisation aléatoire avec des valeurs allant de 0 à 9 inclu
java.util.Random oPif = new java.util.Random();
for (int i = 0; i < tab.length; i++) {
tab[i] = oPif.nextInt(10);
}
//initialisation aléatoire avec des valeurs allant de 0 à 100 par pallier de 5
java.util.Random oPif = new java.util.Random();
for (int i = 0; i < tab.length; i++) {
tab[i] = oPif.nextInt(20)*5+5;
}
//initialisation aléatoire avec des valeurs allant de 1 à la taille du tableau (pour un tableau de 10 élément : de 1 à 10 inclu)
java.util.Random oPif = new java.util.Random();
for (int i = 0; i < tab.length; i++) {
tab[i] = oPif.nextInt(10)+1;
}
- Le remplir à la main quand il n'existe pas de fonction mathématique simple pour le faire automatiquement. Quand tu seras plus familliarisé avec Java tu pourras remplir ton tableau à partir d'un fichier de données par exemple.
Bref, c'est la même chose que dans les autres langages, c'est pour ça que je te disais d'essayer de lire de la doc sur l'algorithmie.
[^] # Re: merci!
Posté par pifou . En réponse au message Problème pour déinir un tableau d'entier et surtout pour écrire une méthode d'affichage. Évalué à 2.
> mélangés genre 5 / 4/ 9/ 8/ 3 /2 etc.. est-ce que ta ligne d'initialisation ...fonctionne?
En fait, ça dépend, pour initialiser un tableau tu as 4 choix :
- Le remplir grâce à une valeur fixe, en Java c'est inutile pour remplir un tableau de 0 car à la déclaration d'un tableau d'entier il initialise déjà toutes les cases à 0. Exemple :
//initialisation des valeurs à 2
for (int i = 0; i < tab.length; i++) {
tab[i] = 2;
}
- Le remplir grâce à une fonction mathématique utilisant l'index. En gros à la place du 'i+1' tu peux utiliser des fonctions plus complexes, voici quelques exemples :
//initialisation des valeurs des cases au carrée de l'index (tab[0]=0, tab[1]=1, tab[2]=4 ... tab[9]=81)
for (int i = 0; i < tab.length; i++) {
tab[i] = i*i;
}
//initialisation des valeurs à l'inverse de l'index (exemple pour un tableau de 10 éléments : tab[0]=10, tab[1]=9, tab[2]=8 ... tab[9]=1)
for (int i = 0; i < tab.length; i++) {
tab[i] = tab.length-i;
}
- Le remplir avec des valeurs totalement aléatoires
//initialisation aléatoire avec des valeurs allant de 0 à 9 inclu
java.util.Random oPif = new java.util.Random();
for (int i = 0; i < tab.length; i++) {
tab[i] = oPif.nextInt(10);
}
//initialisation aléatoire avec des valeurs allant de 0 à 100 par pallier de 5
java.util.Random oPif = new java.util.Random();
for (int i = 0; i < tab.length; i++) {
tab[i] = oPif.nextInt(20)*5+5;
}
//initialisation aléatoire avec des valeurs allant de 1 à la taille du tableau (pour un tableau de 10 élément : de 1 à 10 inclu)
java.util.Random oPif = new java.util.Random();
for (int i = 0; i < tab.length; i++) {
tab[i] = oPif.nextInt(10)+1;
}
- Le remplir à la main quand il n'existe pas de fonction mathématique simple pour le faire automatiquement. Quand tu seras plus familliarisé avec Java tu pourras remplir ton tableau à partir d'un fichier de données par exemple.
Bref, c'est la même chose que dans les autres langages, c'est pour ça que je te disais d'essayer de lire de la doc sur l'algorithmie.
Bonne continuation