elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  duda con arrays o matriz?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: duda con arrays o matriz?  (Leído 3,119 veces)
ricardovinzo

Desconectado Desconectado

Mensajes: 135


P.T.C


Ver Perfil
duda con arrays o matriz?
« en: 10 Junio 2008, 04:38 am »

bueno gente estaba leyendo esto sobre las matrices, etc... que si:

dim var() As string

bueno, pero de verdad hay algo que no entendi y fue la manera de introducir en tiempo de diseño cosas a esta matriz osea que si

var(0) = "carlos"
var(1) = "jose"
var(3) = "martin"

como lo puedo hacer, osea si me pueden explicar de una manera simple! ;) se que es facil pero no entiendo muy bien disculpen las molestias! ;)


En línea

3# Convocacion de Moderadores en Code Makers, entra!
cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: duda con arrays o matriz?
« Respuesta #1 en: 10 Junio 2008, 05:16 am »

Debes saber un par de cositas, hay arrays estáticos y arrays dinámicos y tu estas trabajando con los dinámicos, es decir, no estas sujeto a trabajar con la misma cantidad de elementos con las que le asignes la primera ves ¿pero queeeé? y ¿por qué dices eso? si es así ¿como son los estáticos?

te explico:

Arrays Dinámicos
Código
  1. Option Explicit
  2.  
  3. Dim Var() As String
  4.  
  5. Private Sub Form_Load()
  6.  
  7.    ' Se asigna espacio de almacenamiento a una variable de matriz, usando ReDim
  8.    ReDim Var(2)
  9.  
  10.    'asignar valores
  11.    Var(0) = "carlos"
  12.    Var(1) = "jose"
  13.    Var(2) = "martin"
  14.  
  15.    MsgBox Var(0) & " " & Var(1) & " " & Var(2)
  16.  
  17.    'redimensionamos...
  18.  
  19.    ReDim Var(6) 'indicar la cantidad de elementos del vector
  20.  
  21.    'asignar valores
  22.    Var(3) = "luis"
  23.    Var(4) = "Yessi"
  24.    Var(5) = "yohanna"
  25.  
  26.    MsgBox Var(3) & " " & Var(4) & " " & Var(5)
  27. End Sub


Arrays estáticos

Trabajando con arrays estáticos te evitas el tener que redimensionarlo, pero muchas veces no es lo que se desea, para declarar un array estático (array con un número fijo de elementos), Visual Basic hace tres consideraciones importantes:

    - Para declarar un array global, hágalo en la sección de declaraciones de un módulo utilizando la sentencia Public.
    - Para declarar un array a nivel de un módulo, hágalo en la sección de declaraciones del módulo utilizando la sentencia Public o Dim.
    - Para declarar un array local a un procedimiento, utilice la sentencia Dim o Static dentro del propio procedimiento.

Código
  1. Option Explicit
  2.  
  3. ' Es ESTÁTICO, por lo tanto indicas la cantidad de elementos de una vez. :o
  4. Dim Var(3) As String
  5. Private Sub Form_Load()
  6. On Error GoTo Error
  7.    'asignar valores
  8.    Var(0) = "carlos"
  9.    Var(1) = "jose"
  10.    Var(2) = "martin"
  11.  
  12.    MsgBox Var(0) & " " & Var(1) & " " & Var(2)
  13.  
  14.    'NO puedes redimensionar el vector, porque es ESTÁTICO
  15.    ReDim Var(4) 'indicar la cantidad de elementos del vector
  16.  
  17.    'asignar valores
  18.    Var(4) = "luis" 'Lo podrias hacer si fuera dinámico, pero no lo es o.O
  19.  
  20.    Exit Sub 'NO presentamos el mensaje de ERROR sino es necesario...
  21. Error:
  22.    MsgBox "No puedes redimensionar un array ESTATICO"
  23.  
  24.    Err = 0
  25. End Sub



« Última modificación: 10 Junio 2008, 15:41 pm por cΔssiΔnі » En línea

Hole_System

Desconectado Desconectado

Mensajes: 239


Ver Perfil
Re: duda con arrays o matriz?
« Respuesta #2 en: 10 Junio 2008, 06:51 am »

Debes saber un par de cositas, hay arrays estáticos y arrays dinámicos y tu estas trabajando con los dinámicos, es decir, no estas sujeto a trabajar con la misma cantidad de elementos con las que le asignes la primera ves ¿pero queeeé? y ¿por qué dices eso? si es así ¿como son los estáticos?

te explico:

Arrays Dinámicos
Código
  1. Option Explicit
  2.  
  3. Dim Var() As String
  4.  
  5. Private Sub Form_Load()
  6.  
  7.    ' Se asigna espacio de almacenamiento a una variable de matriz, usando ReDim
  8.    ReDim Var(2)
  9.  
  10.    'asignar valores
  11.    Var(0) = "carlos"
  12.    Var(1) = "jose"
  13.    Var(2) = "martin"
  14.  
  15.    MsgBox Var(0) & " " & Var(1) & " " & Var(2)
  16.  
  17.    'redimensionamos...
  18.  
  19.    ReDim Var(6) 'indicar la cantidad de elementos del vector
  20.  
  21.    'asignar valores
  22.    Var(3) = "luis"
  23.    Var(4) = "Yessi"
  24.    Var(5) = "yohanna"
  25.  
  26.    MsgBox Var(3) & " " & Var(4) & " " & Var(5)
  27. End Sub


Arrays estáticos

Trabajando con arrays estáticos te evitas el tener que redimensionarlo, pero muchas veces no es lo que se desea, para declarar un array estático (array con un número fijo de elementos), Visual Basic hace tres consideraciones importantes:

    - Para declarar un array global, hágalo en la sección de declaraciones de un módulo utilizando la sentencia Public.
    - Para declarar un array a nivel de un módulo, hágalo en la sección de declaraciones del módulo utilizando la sentencia Public o Dim.
    - Para declarar un array local a un procedimiento, utilice la sentencia Dim o Static dentro del propio procedimiento.

Código
  1. Option Explicit
  2.  
  3. ' Es ESTÁTICO, por lo tanto indicas la cantidad de elementos d euna vez
  4. Dim Var(3) As String
  5. Private Sub Form_Load()
  6. On Error GoTo Error
  7.    'asignar valores
  8.    Var(0) = "carlos"
  9.    Var(1) = "jose"
  10.    Var(2) = "martin"
  11.  
  12.    MsgBox Var(0) & " " & Var(1) & " " & Var(2)
  13.  
  14.    'NO puedes redimensionar el vector, porque es ESTÁTICO
  15.    ReDim Var(4) 'indicar la cantidad de elementos del vector
  16.  
  17.    'asignar valores
  18.    Var(4) = "luis" 'Lo podrias hacer si fuera dinámico, pero no lo es o.O
  19.  
  20. Error:
  21.    MsgBox "No puedes redimensionar un array ESTATICO"
  22.  
  23.    Err = 0
  24. End Sub

Una dudita, cuando pones la etiqueta Error: esta se activa cuando ocurre uno o mas bien lo pones para saber que es lo que tiene que ir cuando no se cumple la sentencia..   ;D ;D

Je menos mal, aclare una duda q tenia..ufff siempre se aprende algo...

Saludotes y muy buena explicación..

En línea

By Pitoniso.
Hans el Topo


Desconectado Desconectado

Mensajes: 1.752


"Estoy cansado de no hacer nada"


Ver Perfil WWW
Re: duda con arrays o matriz?
« Respuesta #3 en: 10 Junio 2008, 11:55 am »

en lo del on error se se ha olvidado poner exit sub para que no entre cuando todo vaya bien
el on error goto sirve para controlar/informar de errores durante la ejecución de dicha función/procedimiento


Código:
Private Sub Form_Load()
On Error GoTo Error

'bla bla bla ...

exit sub    '<---
Error:
    MsgBox "No puedes redimensionar un array ESTATICO"
 
    Err = 0
End Sub
En línea

 
CeLaYa


Desconectado Desconectado

Mensajes: 543



Ver Perfil
Re: duda con arrays o matriz?
« Respuesta #4 en: 10 Junio 2008, 23:36 pm »

creo que tambien hay que mencionar que cuando se redimensiona un array dinamico pierde los valores que han sido almacenados. para no perderlos basta con usar "Redim preserve"
En línea

"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda resultado de matriz [resuelto y con for incluido :) ]
Programación C/C++
flony 7 3,212 Último mensaje 16 Octubre 2010, 01:53 am
por Akai
Duda con arrays dentro de arrays « 1 2 »
PHP
Servia 11 4,971 Último mensaje 10 Marzo 2011, 09:04 am
por Servia
[Resuelto] Duda simple con arrays
PHP
josevc 2 963 Último mensaje 31 Marzo 2015, 15:07 pm
por josevc
[VB.NET(FrameWork)] Matriz (arrays) o Colecciones?
.NET (C#, VB.NET, ASP)
gnxa95 2 761 Último mensaje 15 Julio 2018, 17:40 pm
por Eleкtro
MOVIDO: [VB.NET(FrameWork)] Matriz (arrays) o Colecciones?
Programación Visual Basic
Eleкtro 0 587 Último mensaje 15 Julio 2018, 17:40 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines