Consumo de Listas

» PorCada


PorCada C L, consume la lista L mediante la realización de los comandos indicados en C. Los comandos en C en realidad son una plantilla procesada por "invoca".

muestra segmenta lista 3 iota 12

[[0 1 2] [3 4 5] [6 7 8] [9 10 11]]

"?" se refiere a todo el elemento que se está consumiendo al momento.

porcada [muestra ?] [[0 1 2] [3 4 5] [6 7 8] [9 10 11]]

[0 1 2]
[3 4 5]
[6 7 8]
[9 10 11]

# se refiere al contador interno de "porcada" que cuenta cada elemento consumido empezando en 0.

porcada [muestra #] [[0 1 2] [3 4 5] [6 7 8] [9 10 11]]

0
1
2
3

muestra clona [4 [100 90]]

[[100 90] [100 90] [100 90] [100 90]]

porcada [aplica [[l a] avanza :l giraderecha :a] ?] clona [4 [100 90]]


» Porta


Porta C A, consume la lista importada del archivo indicado en A mediante la realización de los comandos indicados en C. Es equivalente a [porcada C importa!lis A], sin embargo, al igual que "transporta", utiliza menos memoria.


» EscribeMat


El procedimiento escribeMat despliega en la pantalla la representación matricial de una lista de listas.

escribeMat [[1 2 3 4] [5 6 7 8] [9 10 11 12]]

1  2  3  4
5  6  7  8
9 10 11 12

escribeMat [[Quito 2 3 4] [Guayaquil 6 7 8] [Cuenca 10 11 12]]

Quito      2  3  4
Guayaquil  6  7  8
Cuenca    10 11 12


» EscribeTabla


El procedimiento escribeTabla despliega en la pantalla la representación tipo tabla de una lista de listas. La representación "tipo tabla" de una lista tiene:

Como primer elemento de la lista una lista con dos elementos. El primer elemento es una lista con los títulos de las filas, tantos títulos como filas hayan. El segundo elemento es una lista con los títulos de las columnas, tantos títulos como columnas hayan.

El resto de la lista, es decir todos los demás elementos menos el primero, constituyen los datos.

Por ejemplo, si los títulos de las filas son [f1 f2 f3] y los títulos de las columnas son [c1 c2 c3]; y los datos son [[1 2 3] [4 5 6] [7 -2 9]], entonces:

escribeTabla ponprimero (lista [f1 f2 f3] [c1 c2 c3]) [[1 2 3] [4 5 6] [7 -2 9]]

   c1 c2 c3
f1  1  2  3
f2  4  5  6
f3  7 -2  9