J'essaie de créer une matrice de nombres doubles aléatoires. La matrice doit être de taille n x n et tous les nombres doivent être compris entre 1 et 100. J'essaie de la résoudre depuis des lustres maintenant et je sais que ça doit être quelque chose de si simple (comme c'est habituellement le cas).Comment puis-je afficher une matrice N x N de nombres aléatoires en Java?
Voici mon code:
public static void main(String[] args) {
PrintRandomGraph(RandomArray(4));
}
private static double[] RandomArray(int n) {
double[] randomArray = new double[n];
double[][] randomMatrix = new double [n][n];
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
for (int i = 0; i < n; i++) {
Integer r = rand.nextInt()% 100;
randomArray[i] = Math.abs(r);
for (int j = 0; j < n; j++) {
Arrays.fill(randomMatrix, i, i+1, randomArray);
}
}
return randomArray;
}
private static void PrintRandomGraph(double[] inputArray) {
int n = inputArray.length;
double[] showArray = new double[n];
double[][] showMatrix = new double [n][n];
for (int j = 0; j < n; j++) {
for (int i = 0; i < n; i++) {
double r = inputArray[i];
showArray[i] = r;
Arrays.fill(showMatrix, i, i+1, showArray);
}
}
System.out.println(Arrays.deepToString(showMatrix));
}
Quand je lance le code que je reçois un réseau aléatoire répété n fois comme:
[[63,0, 97,0, 64,0, 75,0], [63.0 , 97,0, 64,0, 75,0], [63,0, 97,0, 64,0, 75,0], [63,0, 97,0, 64,0, 75,0]]
Je pense que je dois revenir au sommet de la boucle et ajouter le nouveau tableau ...? .. S'il vous plaît aider = (
Toute aide est très appréciée Merci
pourriez-vous reformater votre fonction printRandomGraph() ? –
Ouais, je ne suis pas sûr. Je parlais de cela plus tôt, mais je continuais à imprimer les mêmes quatre chiffres dans différents ordres ou avec des espaces vides dans les endroits? –