Tableau à deux dimenssion
natier
-
natier -
natier -
Bonjour,
Je cherche à remplir un tableau à dimenssions avec des nombres tirés au hasard qui ne doivent pas apparaitre plusieurs fois sur la même ligne ni sur la même colonne. J'ai un code mais celui m'affiche les nombre les un à la suite des autres. Pouvez-vous m'aidez à résoudre mon problème?
import java.util.Scanner;
public class tableau{
public static void main(String[] args) {
int value = 1;
int[][] monTableau = new int[9][9];
for (int i = 0; i < 9; i++){
for(int j = 0; j < 9; j++){
monTableau[i][j] = value + i;
System.out.println(monTableau [i] [j]);
}
}
}
}
Je cherche à remplir un tableau à dimenssions avec des nombres tirés au hasard qui ne doivent pas apparaitre plusieurs fois sur la même ligne ni sur la même colonne. J'ai un code mais celui m'affiche les nombre les un à la suite des autres. Pouvez-vous m'aidez à résoudre mon problème?
import java.util.Scanner;
public class tableau{
public static void main(String[] args) {
int value = 1;
int[][] monTableau = new int[9][9];
for (int i = 0; i < 9; i++){
for(int j = 0; j < 9; j++){
monTableau[i][j] = value + i;
System.out.println(monTableau [i] [j]);
}
}
}
}
1 réponse
-
bonjour,
ton tableau n'est pas construit pour avoir des valeurs aléatoire (si ce que tu veux dire en haut), parce que, T[i][j]=value +i, alors il est indépendant de j. Tu aura le meme nombre le long de chaque colonne.
au lieu de ça, pensant un peu, à remplire la matrice avec des nombre aléatoire avec la fonction Random, et voila un exemple:
ublic class Test {
public static void main(String[] args) {
int min=0, max=100;
int[][] monTableau= new int[9][9];
//remplissage de la matrice monTableau
for (int i = 0; i < 9; i++)
{
for(int j = 0; j < 9; j++)
{
monTableau[i][j]= (int) (int)(Math.random() * (max-min)) + min;
}
}
// Affichage du tableau sous forme de matrice
for (int i = 0; i < 9; i++)
{
for(int j = 0; j < 9; j++)
{
System.out.print("T("+i+")("+j+")= "+monTableau[i][j]+"\t");
}
System.out.println();
}
}
}
Bonne chance