Título: Parametros de entrada, arreglos bidimensionales Publicado por: greenselves en 15 Marzo 2010, 16:19 pm :DHola! tengo que hacer un programa en C# donde tengo que imprimir una tabla cuadrada de caracteres, esto con arreglos bidimensionales.
Mi problema es el paso del Arreglo Bid. al constructor. tengo esto. Código
Al compilar [lo compilo desde consola], no me marca error pero al ejecutar me aparece una excepcion la excepcion es: Unhandled Exception: System.IndexOutOfRnageException: Index was outside the bounds of the array. at Arreglo..ctor<Char[,] arreglo> at MainApp.Main<> Espero me puedan ayudar, por su ayuda gracias!! Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: Novlucker en 15 Marzo 2010, 16:28 pm Esto te parece cuadrado? :rolleyes:
{ {'O','O','O'},{'O','O','O'} } Saludos Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: [D4N93R] en 15 Marzo 2010, 18:42 pm A mi me parece un rectángulo! :D
Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: greenselves en 15 Marzo 2010, 19:42 pm hmm Mas bien es como ejemplo, el dato es que no me daje compilar porque la forma en la que hago el paso por parametros esta incorrecta.
Es por eso que necesita la ayuda Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: Novlucker en 15 Marzo 2010, 19:45 pm Pero eso no es lo que dice el error que has dejado ... el error que nos dejas es justamente por eso ... tienes un array rectangular, y no cuadrado, así que mientras puedes recorrer un lado "más lejos", el otro se termina antes :P
Saludos Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: greenselves en 15 Marzo 2010, 19:52 pm Pero lo he intentado asi como dices
Código
Ejecutando me aparece el mismo error. que deberia hacer?? Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: Novlucker en 15 Marzo 2010, 20:04 pm No veo nada malo con el código, seguro que el error te da ahí y no en el método imprimir()?
Etiquetas de código! Saludos Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: greenselves en 15 Marzo 2010, 20:07 pm // mi metodo imprimir public void Imprimir() { Console.WriteLine(); for (i=0; i<3; i++) { for(j=0; j<3; j++) { Console.Write("El valor {0} ", numeros[i,j]); } } }// imprimir Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: greenselves en 15 Marzo 2010, 20:37 pm Y a encontre mi problema tuve que cambiar en el constructor numeros.Length por el tamaño del arreglo (3); y el codigo queda asi public Arreglo( char [,] arreglo) { //constructor numeros = new char[arreglo.Length,arreglo.Length]; for ( i=0; i < 3; i++) { for( j=0; j< 3; j++) { numeros[i,j] = arreglo[i,j]; } } } // mi metodo imprimir public void Imprimir() { Console.WriteLine(); for (i=0; i<3; i++) { for(j=0; j<3; j++) { Console.Write(" {0} ", numeros[i,j]); } Console.WriteLine(); } }// imprimir gracias por su ayuda saludos!!! Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: Novlucker en 15 Marzo 2010, 20:42 pm Aaaaaaaaaaaa!
Ya he visto cual es el problema, no me había dado cuenta :P ... estas usando numeros.length, y el largo de una matriz es siempre la suma de todas sus dimensiones, así que si tienes una de 3x3, entonces el largo es 9, y ahí es donde te pasabas en el for Tienes que usar getlength Saludos Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: greenselves en 15 Marzo 2010, 21:11 pm tienes las sintaxias, para implementarlo??
public Arreglo( char [,] arreglo) { //constructor numeros = new char[arreglo.Length, arreglo.Length]; for ( i=0; i < GetLength(0); i++) { for( j=0; j< GetLength(1); j++) { numeros[i,j] = arreglo[i,j]; } } } como lo he encontrado en unos sitios, debe ir asi, pero me sale error Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: Novlucker en 15 Marzo 2010, 22:55 pm numeros.getlength(0)
Saludos Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: raul338 en 16 Marzo 2010, 01:05 am usen las etiquetas code :¬¬
Título: Re: Parametros de entrada, arreglos bidimensionales Publicado por: [D4N93R] en 16 Marzo 2010, 05:45 am [ code=csharp]<Tu codigo aki!!!!>[/code ] Sin los espacios :P
|