Codigo

Descargar como txt, pdf o txt
Descargar como txt, pdf o txt
Está en la página 1de 4

Public Class Form1

Dim CINTA As String


Dim POSICION_CINTA As Integer
Private Sub CMD_GENBINSUC_Click(ByVal sender As System.Object, ByVal e As Sy
stem.EventArgs) Handles CMD_COMPROBAR.Click
Dim SIMBOLO_LEIDO, SIMBOLO_ENTRADA, TRANSICION As String
Dim ESTADO As String = "0"
'AGREGAR ESPACIOS EN BLANCO A LA CADENA
CINTA = "#" + TXT_cadena.Text + "#" : POSICION_CINTA = 1
Do
SIMBOLO_LEIDO = LEER()
Select Case SIMBOLO_LEIDO
Case "0", "1", "x", "y", "#"
SIMBOLO_ENTRADA = SIMBOLO_LEIDO
Case Else
MsgBox("ERROR >> CADENA NO VLIDA.")
Return
End Select
TRANSICION = TABLA(ESTADO, SIMBOLO_ENTRADA)
If TRANSICION = "ERROR" Then
MsgBox("ERROR >> CADENA NO VLIDA.")
Return
End If
ESTADO = DESPLAZAMIENTO(TRANSICION)
Loop Until ESTADO = "ACEPTAR"
lbl_cadena.Text = CINTA
q2.Visible = False
q3.Visible = False
q0.Visible = False
q1.Visible = False
q4.Visible = True
q4.FillColor = Color.Green
MsgBox("CADENA VLIDA.")
End Sub
Function LEER() As String
Dim TEMPORAL_CINTA As String
TEMPORAL_CINTA = CINTA.Chars(POSICION_CINTA).ToString()
Return TEMPORAL_CINTA
End Function
Function TABLA(ByVal ESTADO As String, ByVal ENTRADA As String) As String
If ESTADO = "0" And ENTRADA = "0" Then
lbl_cadena.Text = CINTA
q0.Visible = False
q4.Visible = False
q3.Visible = False
q2.Visible = False
q1.Visible = True
q1.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA 0, INSERTA x, Y SE MUEVE A LA DERECHA")
Return "1xR"
End If
If ESTADO = "0" And ENTRADA = "y" Then
lbl_cadena.Text = CINTA

q0.Visible = False
q4.Visible = False
q3.Visible = True
q2.Visible = False
q1.Visible = False
q3.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA y, INSERTA y, Y SE MUEVE A LA DERECHA")
Return "3yR"
End If
If ESTADO = "1" And ENTRADA = "0" Then
lbl_cadena.Text = CINTA
q0.Visible = False
q4.Visible = False
q3.Visible = False
q2.Visible = False
q1.Visible = True
q1.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA 0, INSERTA 0, Y SE MUEVE A LA DERECHA")
Return "10R"
End If
If ESTADO = "1" And ENTRADA = "y" Then
lbl_cadena.Text = CINTA
q0.Visible = False
q3.Visible = False
q4.Visible = False
q2.Visible = False
q1.Visible = True
q1.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA y, INSERTA y, Y SE MUEVE A LA DERECHA")
Return "1yR"
End If
If ESTADO = "1" And ENTRADA = "1" Then
lbl_cadena.Text = CINTA
q0.Visible = False
q3.Visible = False
q4.Visible = False
q1.Visible = False
q2.Visible = True
q2.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA 1, INSERTA y, Y SE MUEVE A LA IZQUIERDA")
Return "2yL"
End If
If ESTADO = "2" And ENTRADA = "0" Then
lbl_cadena.Text = CINTA
q4.Visible = False
q3.Visible = False
q0.Visible = False
q1.Visible = False
q2.Visible = True
q2.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA 0, INSERTA 0, Y SE MUEVE A LA IZQUIERDA")
Return "20L"
End If
If ESTADO = "2" And ENTRADA = "y" Then
lbl_cadena.Text = CINTA

q4.Visible = False
q3.Visible = False
q0.Visible = False
q1.Visible = False
q2.Visible = True
q2.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA y, INSERTA y, Y SE MUEVE A LA IZQUIERDA")
Return "2yL"
End If
If ESTADO = "2" And ENTRADA = "x" Then
lbl_cadena.Text = CINTA
q4.Visible = False
q3.Visible = False
q2.Visible = False
q1.Visible = False
q0.Visible = True
q0.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA x, INSERTA x, Y SE MUEVE A LA DERECHA")
Return "0xR"
End If
If ESTADO = "3" And ENTRADA = "y" Then
lbl_cadena.Text = CINTA
q4.Visible = False
q1.Visible = False
q0.Visible = False
q2.Visible = False
q3.Visible = True
q3.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA y, INSERTA y, Y SE MUEVE A LA DERECHA")
Return "3yR"
End If
If ESTADO = "3" And ENTRADA = "#" Then
lbl_cadena.Text = CINTA
q3.Visible = False
q1.Visible = False
q0.Visible = False
q2.Visible = False
q4.Visible = True
q4.FillColor = Color.Aquamarine
MsgBox("ENCUENTRA #, INSERTA #, Y SE MUEVE A LA DERECHA")
Return "ACEPTAR"
End If
Return "ERROR"
End Function
Function DESPLAZAMIENTO(ByVal TRANSICION As String) As String
Dim ESTADO, SIMBOLO_LEIDO, MOVIMIENTO As String
If TRANSICION = "ACEPTAR" Then : Return TRANSICION : End If
ESTADO = TRANSICION.Chars(0).ToString()
SIMBOLO_LEIDO = TRANSICION.Chars(1).ToString()
MOVIMIENTO = TRANSICION.Chars(2).ToString()
CINTA = CINTA.Remove(POSICION_CINTA, 1)
CINTA = CINTA.Insert(POSICION_CINTA, SIMBOLO_LEIDO)

If MOVIMIENTO = "R" Then : POSICION_CINTA += 1 : End If


If MOVIMIENTO = "L" Then : POSICION_CINTA -= 1 : End If
Return ESTADO
End Function
End Class

También podría gustarte