Arreglos
SL tiene tipos compuestos para trabajar con colecciones indexadas.
Tipos relacionados
Sección titulada «Tipos relacionados»vectorpara una dimension.matrizpara dos dimensiones.dimpara asignar memoria cuando el arreglo es abierto.
Vector con tamano fijo
Sección titulada «Vector con tamano fijo»const MAX_ALUMNOS = 3var notas : vector [MAX_ALUMNOS] numerico k : numericoinicio notas = {7, 8, 9} desde k = 1 hasta MAX_ALUMNOS { imprimir(notas[k]) // 7, luego 8, luego 9 }finPatron comun de recorrido
Sección titulada «Patron comun de recorrido»El ejemplo rust/examples/cap_5_1.sle usa un vector para leer notas, calcular un promedio y luego contar cuantas estan por debajo.
const MAX_ALUMNOS = 3var notas : vector [MAX_ALUMNOS] numerico = {4, 6, 8} suma_notas = 0 prom = 0 cnb = 0 k = 0inicio desde k = 1 hasta MAX_ALUMNOS { suma_notas = suma_notas + notas[k] }
prom = suma_notas / MAX_ALUMNOS
desde k = 1 hasta MAX_ALUMNOS { si (notas[k] < prom) { cnb = cnb + 1 } }
imprimir(prom) // 6 imprimir(cnb) // 1finMatrices
Sección titulada «Matrices»La forma declarativa es directa:
var tablero : matriz [3, 3] numericoinicio tablero[2][3] = 9 imprimir(tablero[2][3]) // 9finCuando usar dim()
Sección titulada «Cuando usar dim()»dim() sirve para arreglos abiertos, cuando el tamano real se decide durante la ejecucion.
var datos : vector [*] numerico n : numericoinicio n = 3 dim(datos, n) datos[1] = 10 datos[2] = 20 datos[3] = 30 imprimir(datos) // 10 20 30finContinuar
Sección titulada «Continuar»- Segui con Condicionales para combinar datos y decisiones.
- Consulta Funciones integradas si queres revisar helpers de runtime para colecciones.