
Error Array Bidimensional
Publicado por Jose (2 intervenciones) el 20/10/2014 20:54:40
Hola a todos,
La idea de este código es obtener números aleatorios que no se repitan para una matriz 3x3, pero al ejecutarlo me sale números repetidos, pero lo extraño es que no se repiten en la misma fila. Por favor me pudieran decir cual es el error que estoy cometiendo?, gracias.
public class AlgoritmoBidimensional {
public static void main(String[] args) { //las filas no se repiten
int vector[][] = new int[3][3];
int i = 0, j = 0, a = 1, x, y;
vector[i][j] = (int)(Math.random()*9+1); //(int)(Math.random()*9);
for(i=0; i<vector.length; i++) {
for(j=a; j<vector.length; j++) {
vector[i][j] = (int)(Math.random()*9+1);
for(x=0; x<=i; x++) {
for(y=0; y<j; y++) {
if(vector[i][j] == vector[x][y]) {
j--;
}
}
}
}
a = 0;
}
for(i=0; i<vector.length; i++) {
for(j=0; j<vector.length; j++) {
System.out.print("\t n["+i+"]["+j+"] = " + vector[i][j]);
}
System.out.println("\n");
}
}
}
La idea de este código es obtener números aleatorios que no se repitan para una matriz 3x3, pero al ejecutarlo me sale números repetidos, pero lo extraño es que no se repiten en la misma fila. Por favor me pudieran decir cual es el error que estoy cometiendo?, gracias.
public class AlgoritmoBidimensional {
public static void main(String[] args) { //las filas no se repiten
int vector[][] = new int[3][3];
int i = 0, j = 0, a = 1, x, y;
vector[i][j] = (int)(Math.random()*9+1); //(int)(Math.random()*9);
for(i=0; i<vector.length; i++) {
for(j=a; j<vector.length; j++) {
vector[i][j] = (int)(Math.random()*9+1);
for(x=0; x<=i; x++) {
for(y=0; y<j; y++) {
if(vector[i][j] == vector[x][y]) {
j--;
}
}
}
}
a = 0;
}
for(i=0; i<vector.length; i++) {
for(j=0; j<vector.length; j++) {
System.out.print("\t n["+i+"]["+j+"] = " + vector[i][j]);
}
System.out.println("\n");
}
}
}
Valora esta pregunta


0