problemilla con declaracion de tablas

15/04/2005 - 14:29 por Jordi Maycas | Informe spam

Hola, tengo un problema... y no se me ilumina la lucecita... resumiendo:

Dada una cadena de caracteres, necesito que me dos valores de tipo double,
o
sea, por ejemplo, si le doy el "2" que me devuelva 54 y 34.97. La pregunta
es: Como declaro dicha matriz? Y como la relleno?


cadena="2 3/4" (Solo se puede hacer con numericos?)

select case cadena
case "2 3/4": valor_as
valor_bT.02

etc...


dim allotjament(4 as String,3 as Double)

allotjament(0, 0) = "2" 'El numero q le doy
allotjament(0, 1) = 54 'Lo que me retorna
allotjament(0, 2) = 34.97 'Lo q me retorna
allotjament(1, 0) = "2 3/4" 'El numero q le doy
allotjament(1, 1) = 73 'Lo q me retorna
allotjament(1, 2) = 54.02 'Lo q me retorna

Gracias



Preguntas similare

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
15/04/2005 - 16:43 | Informe spam
Un array no se puede indexar por un string. Lo que puedes hacer es usar una
estructura para alamacenar los dos valores y estos almacenarlos en un
Hashtable. Por ejemplo:

Public Structure Datos

Dim valor_a As Integer
Dim valor_b As Double

Sub New(ByVal a As Integer, ByVal b As Double)
valor_a = a
valor_b = b
End Sub

End Structure

Dim allotjament As New Hashtable
Dim dato As Datos

allotjament.Add("2", New Datos(54, 34.97))
allotjament.Add("2 3/4", New Datos(73, 54.02))

dato = DirectCast(allotjament("2"), Datos)

MessageBox.Show(dato.valor_a.ToString())

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
https://mvp.support.microsoft.com/p...4EF5A4191C
http://spaces.msn.com/members/emorcillo/
Respuesta Responder a este mensaje
#2 Jordi Maycas
18/04/2005 - 07:48 | Informe spam
estoy con vb 6.0

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
Un array no se puede indexar por un string. Lo que puedes hacer es usar
una
estructura para alamacenar los dos valores y estos almacenarlos en un
Hashtable. Por ejemplo:

Public Structure Datos

Dim valor_a As Integer
Dim valor_b As Double

Sub New(ByVal a As Integer, ByVal b As Double)
valor_a = a
valor_b = b
End Sub

End Structure

Dim allotjament As New Hashtable
Dim dato As Datos

allotjament.Add("2", New Datos(54, 34.97))
allotjament.Add("2 3/4", New Datos(73, 54.02))

dato = DirectCast(allotjament("2"), Datos)

MessageBox.Show(dato.valor_a.ToString())

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
https://mvp.support.microsoft.com/p...4EF5A4191C
http://spaces.msn.com/members/emorcillo/


Respuesta Responder a este mensaje
#3 Eduardo A. Morcillo [MS MVP VB]
18/04/2005 - 15:44 | Informe spam
estoy con vb 6.0



¿Y entonces por que preguntas en el grupo de VB.NET?

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
https://mvp.support.microsoft.com/p...4EF5A4191C
http://spaces.msn.com/members/emorcillo/
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida