UNIDAD 3: LINUX PHP ARREGLOS

TEMA 6: PHP ARREGLOS TIPO TABLA

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 a los siguientes formatos:

$TABLA=array(array());

Observar que en general php considera una tabla como un arreglo que contiene arreglos.

Para capturar sus elementos, se usa el procedimiento desarrollado con listas.

Para efectuar otros procesos tales como operaciones, despliegue con todos los elementos de la tabla se usan 2 ciclos, un for externo para controlar renglon y un for interno para controlar columna.

Prog12.php

<?php
$edad=array(array());
session_register("edad");
session_register("r");
session_register("c");
if ($OK == "INSERTAR") {
$r=$r+0;$c=$c+0;
$edad[$r][$c]=$EDAD;
echo "elemento ".$r." ".$c." insertado ".$edad[$r][$c];
$c++;
if($c==3) {$r++;$c=0;};
if($r==2){echo " tabla llena";};
};
if ($OK == "DESPLEGAR") {
for($r=0; $r<=2 ; $r++)
{
for($c=0; $c <= 3; $c++)
{ echo $edad[$r][$c]." " ; };
echo "<br>"; };
// despliegue usando foreach
echo "\n\n";
foreach($edad as $renglon)
foreach($renglon as $columna) echo "$columna\n";
session_unregister($edad);
};
echo "<FORM ACTION=prog12.php METHOD=post>";
echo "EDAD:<INPUT TYPE=text NAME=EDAD value=$EDAD><BR>";
echo "<INPUT TYPE=submit NAME=OK VALUE=INSERTAR ><BR>";
echo "<INPUT TYPE=submit NAME=OK VALUE=DESPLEGAR ><BR>";
echo "</FORM>";
?>

Corrida:

image98.jpg

Notas:

Observar el formato de declaracion y como se controlan los indices de captura reng, col.

Recordar que lo apropiado para desplegar una tabla o matriz en la pc del usuario, es usando un control TABLE de html, pero esto queda de tarea.

Para inicializar tablas, se pueden usar los siguientes formato:

a)

$lista = array( 0 ⇒ 'juan', 1' ⇒ 'pedro', 2 ⇒ 'jose', 3 ⇒ 'maria' );

b)

$lista[1] = 'pedro';
$lista[2] = 'jose';
$lista[3] = 'maria';
$lista[] = 'juan';

c)

$lista[] = 'juan';
$lista[] = 'pedro';
$lista[] = 'jose';

TAREAS PROGRAMACION PHP

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.- 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 programas 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(inicializado).

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.

Politica de Privacidad