Programación Jtap
Las matrices A y B registran algunos datos respectivamente. Los datos de estas dos matrices se han ordenado de pequeño a grande. Utilice VB para escribir un programa que combine estos datos en la misma matriz y organice todos los datos combinados de pequeño a grande.
Esta es la llamada "fusión bidireccional". Al escribir este programa, déjame explicarte primero. En primer lugar, usar la función inputbox() para ingresar grandes cantidades de datos es muy tedioso, especialmente durante la fase de depuración, cuando se ingresa una gran cantidad de datos para cada ejecución. Por lo tanto, se utiliza el método de entrada de la función de matriz.
Para que una gran cantidad de datos sea claramente visible al generar, configuramos un cuadro de texto en el formulario en ejecución, configuramos la propiedad MultiLine del cuadro de texto en True y configuramos Scorllbars en 2 (con desplazamiento vertical). bar) .
El código del programa Vb es el siguiente:
Private subform_Click()
"Dim a" define una matriz de tipo variable.
a =Matriz(1,3,5,7,9,11)
Dim b
b =Matriz(2,4,6,8 , 10, 12, 14, 16, 18)
Dimensión c(1000)
pa = 0: pb = 0: pc = 0
Ea = UBound(a)'Los límites superior e inferior del subíndice de la matriz de variables A se pueden obtener utilizando las funciones UBound() y LBOUND() (si no se especifica el límite inferior del subíndice, generalmente es 0).
eb = sin consolidar(b)
hasta pa & gtea y pb & gteb
si pa & gtea entonces ta = b(eb) + 1 En caso contrario ta = a(pa)
Si pb y gteb entonces tb = a(ea) + 1 en caso contrario tb = b(pb)
Si ta y lt entonces tuberculosis
c(pc) = ta
pc = pc + 1
Si pa & lt= ea entonces pa = pa + 1
Otros
c(pc) = tb
pc = pc + 1
Si pb & lt= eb entonces pb = pb + 1
Será end if...
Bucle
Imprimir ea, eb, pc
Texto1. Text = "Elementos de la matriz A:" & vbCrLf
Para i = 0 a ea
Texto1. Texto = Texto1. Texto & ampa(i) y amp" "
Siguiente i
Texto1. Texto = Texto1. Texto &vbCrLf&vbCrLf&"Elementos de la matriz A:"&vbCrLf
Para i = 0 a eb
Texto1. Texto = Texto1. Texto & ampb(i) y amp" "
Siguiente i
Texto1. Texto = Texto1. Texto &vbCrLf&vbCrLf&"Fusionar elementos de B:"&vbCrLf
Para i = 0 a pc
Texto1. Texto = Texto1. Text & ampc(i) y amp" "
Siguiente I
Conector final
Por supuesto, puedes copiar todos estos datos en una matriz. luego se procesa una vez con un algoritmo de clasificación, pero en este caso no se utiliza el orden original de las dos matrices. ¿Puedes usar la secuencia original para hacer que el algoritmo sea más eficiente?