Visual Basic - AYUDA CON UN ARRAY DINAMICO

Life is soft - evento anual de software empresarial
 
Vista:

AYUDA CON UN ARRAY DINAMICO

Publicado por Angel (2 intervenciones) el 10/09/2009 00:41:54
Hola a todos. Como soy novato, aun no tengo muy dominado esto de los arrays dinamicos. El hecho es el siguiente:

En un programa que estoy haciendo, del que os dejo el codigo, no puedo solucionar mi problema. el código (parte del total) es:

Private Sub Command3_Click()
If VF < VE Then
MsgBox "..."
End If
If r1 >= 180 And r2 < 180 Then ' CALCULO DEL ANGULO ALFA
alfa = 360 - r1 + r2
Else
alfa = r2 - r1
End If
' CALCULO DE LA CANTIDAD DE VECTORES
cantcirc = Int(alfa / (2 * radar))

AAA = -2 * circuncentrox: BBB = -2 * circuncentroy: CCC = circuncentrox ^ 2 + circuncentroy ^ 2 - circunradio ^ 2

Dim po As Integer
Dim xxc1 As Single, yyc1 As Single, xxc2 As Single, yyc2 As Single
Dim AC1x As Single
Dim EC1 As Single, EC2 As Single

For po = 1 To cantcirc
beta = r1 + (po * radar) + (po - 1) * radar: Debug.Print "beta("; po; ")"; beta
mm = Tan((90 - beta) * (PI / 180)): nnn = FEy - mm * FEx

O = (1 + mm ^ 2): Pp = AAA + BBB * mm + 2 * mm * nnn: Q = nnn ^ 2 + CCC + BBB * nnn
raizcad = Pp ^ 2 - 4 * O * Q: Debug.Print "RAIZCAD"; raizcad
If raizcad < 0 Then
xxc1 = -Pp / 2 * O: yyc1 = mm * xxc1 + nnn: Debug.Print "X1'"; xxc1; "Y1'"; yyc1
AC1x = (Atn(yyc1 / xxc1)) * (180 / PI)
If xxc1 > 0 Then
AC1x = 90 - AC1x
Else
If xxc1 < 0 Then
AC1x = 270 - AC1x
End If
End If
lblsolC1.Caption = AC1x
Else
xxc1 = (-Pp + Sqr(raizcad)) / (2 * O)
yyc1 = mm * xxc1 + nnn
xxc2 = (-Pp - Sqr(raizcad)) / (2 * O)
yyc2 = mm * xxc2 + nnn
EC1 = (xxc1 - FEx) ^ 2 + (yyc1 - FEy) ^ 2
EC2 = (xxc2 - FEx) ^ 2 + (yyc2 - FEy) ^ 2
If EC1 < EC2 Then
'aqui se pone el procedimto para que xxc1,yyc1 sean el centro de las circunferencias
AC1x = Int((Atn(yyc1 / xxc1)) * (180 / PI))

If xxc1 > 0 Then
AC1x = 90 - AC1x
Else
If xxc1 < 0 Then
AC1x = 270 - AC1x
End If
End If
lblsolC1.Caption = AC1x
Else
'aqui se pone el procedimto para que xxc2,yyc2 sean el centro de las circunferencias
AC1x = Int((Atn(yyc2 / xxc2)) * (180 / PI))
If xxc2 > 0 Then
AC1x = 90 - AC1x
Else
If xxc2 < 0 Then
AC1x = 270 - AC1x
End If
End If
lblsolC1.Caption = AC1x
End If
End If
Next po
End Sub

Pues bien, mi intencion es que para cada valor de xxc1,yyc1 o xxc2,yyc2 del total de los del contador po, pueda presentar la solucion en una label diferente, de modo que pueda ver todas en la misma pantalla. Sospecho que hay que elaborar un array dinamico, pero cuando lo intento, me pide que la variable cantcirc sea constante, lo cual no puedo obviamente hacer.

¿Alguien podría resolverlo? Ya se que será facil, pero mi "novatez" y la premura... me matan. Muchas gracias de antemano a cualquiera que pueda ayudarme. Gracias. Angel.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder