Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Arrays De Dos Dimensiones Y Funciones
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Arrays De Dos Dimensiones Y Funciones 
 
Hola comunidad.

 Tengo una pequeña duda con los arrays. Vamos a suponer que tengo un array de dos dimensiones.
private datos as new Byte[4,15]
 


 Tengo una función que devuelve un array de 15 numero, por ejemplo:
public function devuelve() as byte[]
dim a as byte
dim b as new byte[15]
for a=0 to 14
b[a] = a
next
return b
 


Ahora llega la pregunta. ¿Hay alguna forma de asignar a la variable datos en el primer y segundo índice lo devuelto por la función? Es decir, quiero que en el índice datos[0, ] se almacene los número devueltos por la función. Y lo mismo en el índice datos[1, ]. No se si me explico.

Muchas gracias y un saludo a todos.
 



 
Guizans - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Arrays De Dos Dimensiones Y Funciones 
 
Guizans escribió: [Ver mensaje]
quiero que en el índice datos[0, ] se almacene los número devueltos por la función. Y lo mismo en el índice datos[1, ]

No he comprendido .
 



 
última edición por vuott el Martes, 26 Septiembre 2017, 12:13; editado 3 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Arrays De Dos Dimensiones Y Funciones 
 
Guizans:

Me ha costado entenderlo.

Tu quieres que en datos[0,0], datos[0,1]...datos[0,15] se almacene los números devueltos por la función.

Fíjate y hazte estás preguntas.
¿ Qué índice no cambia ?.
¿ Cuál cambia ?.
¿ Qué valor contenido en la variable quieres asignar ?.

Si respondes a las tres, tendrás la solución.

Y lo que dice Vuott, es correcto. A menos que fuese un array de array.  

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Martes, 26 Septiembre 2017, 12:12; editado 2 veces 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Arrays De Dos Dimensiones Y Funciones 
 
No me extraña, me explico como el culo.

A ver si ahora me hago entender. Yo puedo declarar un array de una dimensión y en el se almacenan los valores de una función. Algo así:
dim datos as new byte[15]
datos = devuelve()
 

Hasta aquí todo correcto y funciona perfectamente. Mi duda, es si tengo un array de dos dimensiones y quiero almacenar lo que devuelve la función unicamente en las dos primeras dimensiones. ¿Es eso posible?

Shell:
 Entiendo lo que dices y es correcto. Pero por un momento vamos a imaginar que la función en vez de devolver un sólo número, que se almacenaría en datos[0, 1], datos[0,2]....datos[0,15], devuelve todo un array. Y es aquí donde tengo la duda. No puedo llamar 15 veces a la función, por que me devolvería 15 arrays. Es decir, los 15 números devueltos por la función se tendrían que almacenar en el primer índice 0 y el segundo ínidice del 0 al 15.
Algo así, pero me devuelve error:
datos[0, ] =devuelve()
 


A lo mejor no se puede, era simplemente una duda que me surgió, no es algo fundamental. O mejor aún, mi idea es totalmente absurda  
Un saludo.
 



 
Guizans - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Arrays De Dos Dimensiones Y Funciones 
 
Guizans:

Fíjate en esto:

No voy a cambiar la función, pero si la variable datos.

Private datos As New Byte[][15]

Public Sub Main()
  
  datos[0] = devuelve()
  
  Stop
  
End

Public Function devuelve() As Byte[]

  Dim a As Byte
  Dim b As New Byte[15]

  For a = 0 To 14
    b[a] = a
  Next
  Return b

End
 


Esto es lo que muestra la variable datos:

Tenemos un array de array de 15 elementos ( 15 arrays ).

 arrayde15arrays

Y el contenido de la función está en el índice 0. Todo un array en un solo elemento.

 indice0

Es distinto.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Arrays De Dos Dimensiones Y Funciones 
 
Shell escribió: [Ver mensaje]
( 15 arrays ).

No 15 arrays, sino 15 elementos.
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Arrays De Dos Dimensiones Y Funciones (SOLUCIONADO) 
 
Gracias Shell, tu solución funciona a la perfección.

Muchas gracias y un saludo.
 



 
Guizans - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Ordenar Una Matriz De Dos Dimensiones [SOL... shordi General 5 Miercoles, 03 Abril 2013, 19:41 Ver último mensaje
shordi
No hay nuevos mensajes Mostrar Arrays Dentro De Otro Arrays Shell General 9 Domingo, 07 Diciembre 2014, 20:30 Ver último mensaje
Shell
No hay nuevos mensajes Array De 2 Dimensiones String Collections ... tincho Aplicaciones/Fragmentos de Código 2 Sabado, 16 Abril 2016, 15:49 Ver último mensaje
tincho
No hay nuevos mensajes El Ejemplo Definitivo De Matriz, Array, Ar... tincho Aplicaciones/Fragmentos de Código 7 Martes, 10 Enero 2017, 19:47 Ver último mensaje
tincho
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron