Documentacióninsertar(tab, reg, idx)

insertar(tab,reg,idx)\texttt{insertar}(tab, reg, idx)

Nombre

insertar - Inserta un registro en una posicion determinada de la tabla.

Sinopsis

nueva_tabla = tablas.insertar(tab, reg, idx)

Descripcion

Construye una nueva TABLA a partir de tab, insertando reg en la posicion idx y desplazando los registros posteriores.

Es util para:

  • insertar filas en una posicion concreta
  • construir una variante de la tabla sin modificar la original
  • reordenar manualmente registros antes de procesarlos

Comportamiento

  • Trabaja sobre una copia logica de la tabla de entrada.
  • Inserta el registro en la posicion indicada por idx.
  • Desplaza hacia abajo los registros posteriores.
  • Devuelve una nueva TABLA con la insercion aplicada.

Funciones API relacionadas

  • tablas.borrar_por_indice()
  • tablas.borrar_por_valor()

Parámetros

ParámetroTipoDescripción
tabTABLATabla destino.
regREGISTRORegistro a insertar.
idxNUMERICOÍndice/posición de inserción.

Valor de retorno

TABLA - Nueva tabla con el registro insertado en la posicion indicada.

Ejemplo

ejemplo.blox
INCLUIR "tablas.api"
INCLUIR "strings.api"


FUNCION PRINCIPAL
INICIO
    TABLA personas, insertado, reg_ins
    NUMERICO i, cant, sts

    // Cargar datos de prueba
    personas = {nombre = "Ana", ciudad = "Asuncion"}
    personas = {nombre = "Luis", ciudad = "CDE"}
    personas = {nombre = "Maria", ciudad = "Asuncion"}
    personas = {nombre = "Jose", ciudad = "Encarnacion"}
    personas = {nombre = "Laura", ciudad = "CDE"}
    
    reg_ins = {nombre = "Pedro", ciudad = "Asuncion"}

    // INSERTAR(tab, reg, 1)           <-- inserta al inicio
    // INSERTAR(tab, reg, tab.dim + 1) <-- inserta al final
    // INSERTAR(tab, reg, idx)         <-- inserta antes del registro idx actual
    //

    INSERTAR(personas, reg_ins, 3)
    tablas.imprimir_registros(personas)


FINAL