Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Ayuda con Arrays Dinamicos en VB 6.0

Estas en el tema de Ayuda con Arrays Dinamicos en VB 6.0 en el foro de Visual Basic clásico en Foros del Web. Holas: En la U me pidieron un programa en VB 6.0 que permita ingresar al usuario numeros al azar en una LISTA y al momento ...
  #1 (permalink)  
Antiguo 08/11/2008, 19:34
 
Fecha de Ingreso: noviembre-2008
Mensajes: 2
Antigüedad: 15 años, 5 meses
Puntos: 0
Información Ayuda con Arrays Dinamicos en VB 6.0

Holas: En la U me pidieron un programa en VB 6.0 que permita ingresar al usuario numeros al azar en una LISTA y al momento de ingresarlos los vaya ORDENANDO automaticamente en forma ascendente, tb permita eliminar dichos numeros e imprimir dichos numeros.
Para esto usar arrays dinamicos. He buscado en toda la web pero no sale nada parecido.
LA IDEAD ES APRENDER SOBRE MEMORIA DINAMICA EN VISUAL.[
SIZE="5"][/SIZE]
  #2 (permalink)  
Antiguo 08/11/2008, 19:51
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Ayuda con Arrays Dinamicos en VB 6.0

Hola, juank_z88. Bienvenido al foro.

Solo una pregunta, no lo tomes a mal, pero, si en la Universidad te pidieron para hacerlo, ¿no deberían enseñarte primero cómo hacerlo?. Y si así es, supongo que ya tienes alguna base de manejo de arrays dinámicos, pero si no es así, tal vez te sirva mirar esto:
http://www.forosdelweb.com/f69/error...0/#post2648969
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 09/11/2008, 12:27
 
Fecha de Ingreso: noviembre-2008
Mensajes: 2
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Ayuda con Arrays Dinamicos en VB 6.0

Me gustaria saber si es posible, ya que el profe a principio me dijo q ordenara los numeros usando memoria dinamica en visual. Pero investigue y no se puede. Y el profe a la otra clase se rio diciendo q era obvio q no se podia.
Pero ahora me dio el mismo problema pero usando arrays dinamicos, ya q es la unica forma en VB6.0
BUENO EN LA WEB ENCONTRE ESTO:

Ordenamiento de los elementos de una lista
Uno de los procedimientos mas comunes y útiles en el procesamiento de datos es la
ordenación de los mismos, la ordenación tanto numérica como alfanumérica, sigue
las mismas reglas que empleamos nosotros en la vida normal. Hay muchas formas
de ordenar datos, y de estas, la ordenación por el "
método de la burbuja " es uno
de los mas populares. Veamos a continuación el algoritmo correspondiente para
ordenar una lista de n elementos de menor a mayor:

1.
Comparamos el primer elemento con el segundo, el segundo con el tercero,
el tercero con el cuarto, etc. Cuando el resultado de una comparación sea
mayor que, se intercambian los valores de los elementos comparados. Con
esto conseguimos llevar el valor mayor a la posición n.

2.
Repetimos el punto 1, ahora para los n-1 primeros elementos de la lista.
Con esto conseguimos llevar el valor mayor de estos a la posición n-1.

3.
Repetimos el punto 1, ahora para los n-2 primeros elementos de la lista, y
así sucesivamente.

4.
La ordenación termina después de repetir el proceso descrito, n-1 veces, o
cuando al finalizar la ejecución de iesimo proceso no haya habido ningún
cambio.
El siguiente ejemplo presenta la programación de este algoritmo para el caso
concreto de ordenar alfabéticamente la matriz de estructuras del tipo Ficha por el
campo nombre. Recuerde, fijar las siguientes propiedades en el formulario:
Nombre ValOrdena
ForeColor Negro
Caption Metodo Burbuja
BackColor Blanco
AutoRedraw True
Font Arial, 12, Negrita
Escriba el siguiente código en la sección de declaraciones:
Private Type Ficha
Nombre As String * 40
Nota As Single
End Type
Private Alumno() As Ficha
Escriba el siguiente código en el procedimiento Load del Form
Private Sub Form_Load()
Dim n As Integer, i As Integer
Dim s As Integer, k As Integer
Dim Aux As Ficha
n = InputBox("Numero de Alumnos de la lista", "Ingreso de Datos")
ReDim Alumno(1 To n) As Ficha
' Entrada de Datos
For i = 1 To n
With Alumno(i)
.Nombre = InputBox("Nombre del Alumno:", "Ingreso de Datos")
.Nota = InputBox("Nota del Alumno:", "Ingreso de Datos")
End With
Next i
'ORDENAMIENTO DE LOS ELEMENTOS DE LA LISTA

s = 1
k = n
While (s = 1) And (k > 1)
s = 0
'suponemos la lista ordenada
For i = 2 To k
If Alumno(i - 1).Nombre > Alumno(i).Nombre Then
Aux = Alumno(i - 1)
Alumno(i - 1) = Alumno(i)
Alumno(i) = Aux
s = 1
End If
Next i
k = k - 1
Wend
'Escribir la lista
For i = 1 To n
Print Alumno(i).Nombre; Tab(40); Alumno(i).Nota
Next i
End Sub
Intente mejorar la aplicación utilizando controles gráficos, como botones, cajas de
texto, etiquetas, cuadros de mensajes, etc.
EL PROBLEMA ES TRATAR DE INGRESAR ORDENADAMENTE NUMEROS A UNA LISTA EN VISUAL BASIC 6.0

Última edición por juank_z88; 10/11/2008 a las 07:24
  #4 (permalink)  
Antiguo 09/11/2008, 12:39
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Ayuda con Arrays Dinamicos en VB 6.0

Faltó una parte de tu mensaje, el editor tiene un límite para la cantidad de caracteres . Así que al final no sé cuál es el problema.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:02.