Un arreglo tipo tabla
se define como un conjunto de datos del mismo tipo organizados en dos o mas
columnas y uno o mas renglones.
Para procesar (
recordar solo operaciones y comparaciones) internamente todos los elementos de
la tabla se ocupan dos ciclos for uno externo para controlar renglon y uno
interno para controlar columna.
Los elementos de la
tabla se deberan simbolizar con el nombre de la tabla y 2 subindices, el primer
subindice referencia al renglon y el siguiente subindice referencia la columna
los dos dentro del mismo corchete.
La declaracion de una
tabla sera de acuerdo al siguiente formato:
SHARED DIM NOMTABLA(RENG-1,COL-1) AS TIPODATO
Ej: SHARED DIM
SUELDO(3,4) AS DOUBLE ← RECORDAR QUE VA A GENERAR UNA MATRIZ QUE TENDRA
CUATRO RENGLONES Y CINCO COLUMNAS EMPIEZA EN SUELDO(0,0)
Para capturar sus
elementos, usaremos un textbox y un boton de captura, solo tener cuidado o
mucho control sobre los indices rEN y col como lo muestra el ejemplo.
Para efectuar otros
procesos tales como operaciones, despliegues con todos los elementos de la
tabla se deberan usar 2 ciclos un for externo para controlar renglon y un for
interno para controlar columna.
Prog
' DECLARANDO LISTA GLOBAL
' RECORDAR QUE SON 3 RENG Y 4 COLUMNAS
Shared CALIFICACION(2, 3) As Integer
' DECLARANDO RENG Y COL COMO GLOBAL
Dim R, C As Integer
Private Sub Button1_Click_1(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' EN ESTE MODULO SOLO SE TRABAJA CON EL ARREGLO
' EN MEMORIA
CALIFICACION(R, C) = CALIF.Text
C = C + 1
CALIF.Text = ""
If C = 4 Then
R = R + 1
C = 0
End If
If R = 3 Then
CALIF.Visible = False
End If
End Sub
Private Sub Button2_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim TEMP As String
' PROCESANDO Y REGALANDO 50 PUNTOS A TODOS
For R = 0 To 2
For C = 0 To 3
CALIFICACION(R, C) = CALIFICACION(R, C) + 50
Next C
Next R
' desplegando
For R = 0 To 2
TEMP = CALIFICACION(R, 0) & " " & CALIFICACION(R, 1)
& " " & CALIFICACION(R, 2) & " " &
CALIFICACION(R, 3)
LISTA1.Items.Add(TEMP)
' limpiando temporal antes de otro renglon
TEMP = " "
Next
End Sub
Notas:
Observar el formato
de declaracion y como se controlan los indices de captura r, c
Para procesar los
elementos se usan dos ciclos for y el formato tabla (reng,col).
En este problema se
usa el objeto LISTBOX para presentar el resultado mas adelante se usara un
objeto mas apropiado.
Diseno:
Corrida:
Para
inicializar tablas, se usa el siguiente formato:
Dim
nomarreglo() As tipodato = {lista valores}
Dim ciudades() as
String = {“tijuana', “tecate”, “ensenada”}
Recordar que no se
pueden inicializar arreglos de tamano fijo, para inicializar tablas aqui esta
el ejemplo:
Dim alfa(,) As
Integer = {{1, 2}, {3, 4} {5,6} }
TAREAS
PROGRAMACION VISUAL BASIC 2005
1.- CONSTRUIR UN
CUADRO QUE CONTENGA LOS COSTOS FIJOS DE CUATRO PRODUCTOS CUALESQUIERA, QUE SE
PRODUCEN EN TRES PLANTAS DIFERENTES DE UNA EMPRESA MAQUILADORA (2 prog uno
capturado y otro inicializado ).
2.- CONSTRUIR UN
CUADRO QUE CONTENGA LOS INGRESOS MENSUALES POR VENTAS DURANTE LOS TRES PRIMEROS
MESES DEL ANO DE CUATRO SUCURSALES DE UNA CADENA DE AUTO REFACCIONES, AGREGAR
AL FINAL UNA LISTA QUE MUESTRE LOS INGRESOS MENSUALES TOTALES POR MESES Y UNA
SEGUNDA LISTA QUE MUESTRE LOS INGRESOS MENSUALES TOTALES POR SUCURSAL(2 progs
uno capturado y otro inicializado).
3.-CONSTRUIR UN
CUADRO QUE CONTENGA LAS COMISIONES GANADAS POR TRES VENDEDORES, DE LOS 5 TIPOS
DE LINEA BLANCA DE CONOCIDA MUEBLERIA, ADEMAS LISTAS DE COMISIONES TOTALES Y
PROMEDIOS GANADAS POR LOS VENDEDORES, ASI COMO LISTAS DE COMISIONES TOTALES Y
PROMEDIOS POR TIPO DE LINEA BLANCA
ANALIZAR ESTE CODIGO:
' PARA TOTALES Y PROMEDIOS POR RENGLON
FOR R = 0 TO 3
FOR C = 0 TO 2
TOTRENG(R) = TOTRENG(R) + TABLA(R,C)
NEXT C
PROMRENG(R) = TOTRENG(R)/3
NEXT R
'PARA TOTALES Y PROMEDIOS POR COLUMNA
FOR C = 0 TO 2
FOR R = 0 TO 3
TOTCOL(C)=TOTCOL(C) + TABLA(R,C)
NEXT R
PROMCOL(C) = TOTCOL(C) / 4
NEXT C
SUGERENCIA: CONSTRUIR
PRIMERO LOS CUADROS EN PAPEL.
No hay comentarios:
Publicar un comentario