• Viernes 8 de Noviembre de 2024, 12:43

Autor Tema:  Declarar, Leer Y Comparar Caracteres De Un Arrays  (Leído 1674 veces)

fantasma_85

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Declarar, Leer Y Comparar Caracteres De Un Arrays
« en: Lunes 31 de Marzo de 2008, 01:09 »
0
Una vez mas gracias por todas las aportaciones anteriores me han servido mucho...

Tengo mas problemas con los arrays que con las cadenas...

Hice un tex1.text donde almaceno mi cadena de caracteres y un text2.text donde almaceno el resultado.

Para obtener el resultado tengo que hacer ciertas comparaciones con respecto a este cuadro:

   1   2   3   4   5
1   L   O   R   E   N
2   A   B   C   D   F
3   G   H   I/J   K   M
4   P   Q   S   T   U
5   V   W   X   Y   Z


Primero hay que dividir la cadena del text en pares,y si en uno de los pares se repite la letra o caracter se le agrega la "x" entre las dos, y si es necesario se agrega la "x" al final paracmpletar el digrafo, ejemplo:

CERRAR, esto quedaría asi  sin "x"  (CE) (RR) (AR)...ahora con "x" (CE) (RX) (RA) (RX).

las condiciones para :

 :huh: a) Si ambas letras están en la misma fila, son reemplazadas por la letra que queda a la derecha de cada una de ellas. (ejemplo: RE, la R= E, la E=N)

 :huh: B) Si una de las letras está al final de la fila, es reemplazada por la letra que hay al principio de la fila. (ejemplo: NE, la N=L, la E=N)

 :huh: c) Si ambas letras están en la misma columna, son reemplazadas por la letra que hay debajo de cada una de ellas. (ejemplo: LA, la L=A, la A=G)

 :huh: d) Si una de las letras está en la parte inferior de la columna, es reemplazada por la letra de la parte superior de la columna: (ejemplo: ZU, la Z=N, la U=Z)

 :huh: e) Si las letras del dígrafo no están ni en la misma fila ni en la misma columna, entonces:

         :( Para codificar la primera letra, hay que mirar en su fila hasta llegar a la columna que contiene la segunda letra; la letra que hay en esa intersección reemplaza a la primera letra. (ejemplo: OX, la (O,X)=R)

          :( Para codificar la segunda letra, mirar en su fila hasta llegar a la columna que contiene a la primera letra, la letra que hay en la intersección reemplaza a la segunda letra. (ejemplo: OX, la (X,O)=W)

Quedaría entonces: la O=R y la X=W.


EJEMPLO: Si codificamos CERRAR,

en pares: (CE) (RX) (RA) (RX)

codificado: (DR)(CR)(LC)(CR) o DRCRLCCR

Para todoesto hice el siguiente codigo pero no me salio:

Option Base 1
Dim cuadrado(5, 5) As String
Dim cadena, X

Private Sub Command1_Click()

cuadrado(1, 1) = "L"
cuadrado(1, 2) = "O"
cuadrado(1, 3) = "R"
cuadrado(1, 4) = "E"
cuadrado(1, 5) = "N"
cuadrado(2, 1) = "A"
cuadrado(2, 2) = "B"
cuadrado(2, 3) = "C"
cuadrado(2, 4) = "D"
cuadrado(2, 5) = "F"
cuadrado(3, 1) = "G"
cuadrado(3, 2) = "H"
cuadrado(3, 3) = "I" & "J"
cuadrado(3, 4) = "K"
cuadrado(3, 5) = "M"
cuadrado(4, 1) = "P"
cuadrado(4, 2) = "Q"
cuadrado(4, 3) = "S"
cuadrado(4, 4) = "T"
cuadrado(4, 5) = "U"
cuadrado(5, 1) = "V"
cuadrado(5, 2) = "W"
cuadrado(5, 3) = "X"
cuadrado(5, 4) = "Y"
cuadrado(5, 5) = "Z"

cadena= text1.text

X= len (cadena)
For I = 1 To X

.....aqui ya no se como meter las condiciones y comparar caracter a caracter en mi text1 con los valores del array....

End Sub


Si me pudieran orientar se los agradecería