Red de conocimiento informático - Problemas con los teléfonos móviles - Programación VB para desplazar circularmente 10 elementos en una matriz unidimensional hacia la derecha en n bits

Programación VB para desplazar circularmente 10 elementos en una matriz unidimensional hacia la derecha en n bits

' Maneja la asignación a la matriz tú mismo, y escribí dos funciones de desplazamiento hacia la izquierda y hacia la derecha para ti.

Opción explícita

Sub privada Form_Activate()

Dim arr(1 a 10) como cadena, i tan larga, s como cadena

Para i = 1 Para UBound(arr)

arr(i) = i

s = s & arr(i) & ","

Siguiente

Imprimir s

RightMove arr, 3 'Cambiar la matriz 3 veces

s = ""

Para i = 1 A UBound(arr)

s = s & arr(i) & ","

Siguiente

Imprimir s

Fin de subfunción Movimiento izquierdo (arr, n) 'Desplazamiento a la izquierda

Dim temp() Como cadena, i As Long

n = n Mod UBound(arr)

ReDim temp( 1 a UBound(arr))

Para i = n + 1 a UBound(arr)

temp(i - n) = arr(i)

Siguiente

For i = 1 To n

temp(UBound(arr) - n + i) = arr(i)

Siguiente

Para i = 1 a UBound(arr)

arr(i) = temp(i)

Siguiente

Finalizar funciónFunción RightMove(arr, n) 'Shift right

Dim temp() As String, i As Long

n = n Mod UBound(arr) 'El desplazamiento puede exceder el límite superior de la matriz, entiéndalo usted mismo

ReDim temp(1 a UBound(arr))

Para i = UBound(arr) - n + 1 a UBound(arr)

temp(i - UBound(arr) + n) = arr(i)

Siguiente

Para i = 1 Para UBound(arr) - n

temp(n + i ) = arr(i)

Siguiente

Para i = 1 a UBound(arr)

arr(i) = temp(i)

Siguiente

Función final