🚀 Biblioteca: Tabela
Funções para organizar e manipular suas listas!
🚀Criando tabelas
-- Criar tabela com tamanho pré-alocado local lista = tabela.crie(10) -- Cria tabela para 10 elementos sequenciais local mapa = tabela.crie(0, 5) -- Cria tabela para 5 pares chave-valor
Adicionando itens
local lista = {"A", "B"} -- Adiciona no final tabela.insira(lista, "C") -- Agora: {"A", "B", "C"} -- Adiciona numa posição específica (no meio!) tabela.insira(lista, 2, "X") -- Agora: {"A", "X", "B", "C"}
Removendo itens
local numeros = {10, 20, 30, 40} -- Remove o último local removido = tabela.remova(numeros) exiba(removido) -- Mostra: 40 -- Remove da posição 1 tabela.remova(numeros, 1) -- Agora: {20, 30}
Ordenando
Coloca tudo em ordem!
local notas = {7, 3, 9, 1, 5} tabela.ordene(notas) -- Agora: {1, 3, 5, 7, 9} para i, nota em obtenha_pares_indexados(notas) faça exiba(nota) fim
Juntando textos
Transforma uma lista em uma única frase:
local palavras = {"Sol", "é", "legal"} -- Junta com espaço local frase = tabela.concatene(palavras, " ") exiba(frase) -- Mostra: Sol é legal -- Junta com vírgula local frutas = {"Maçã", "Banana", "Uva"} exiba(tabela.concatene(frutas, ", ")) -- Mostra: Maçã, Banana, Uva
Movendo elementos
local origem = {1, 2, 3, 4, 5} local destino = {} -- Move elementos 2 a 4 para o destino na posição 1 tabela.mova(origem, 2, 4, 1, destino) -- destino agora: {2, 3, 4} -- Mover dentro da mesma tabela local lista = {"a", "b", "c", "d"} tabela.mova(lista, 1, 2, 3) -- lista agora: {"c", "a", "b", "d"}
Empacotamento e desempacotamento
-- Empacotar valores em uma tabela local pacote = tabela.empacote(10, 20, 30) -- pacote = {10, 20, 30, n = 3} exiba(pacote.n) -- 3 (número de elementos) -- Desempacotar tabela em valores individuais local valores = {5, 10, 15} exiba(tabela.desempacote(valores)) -- 5, 10, 15 -- Desempacotar intervalo específico exiba(tabela.desempacote(valores, 2, 3)) -- 10, 15
Encontrando coisas
local cores = {"Vermelho", "Verde", "Azul"} função tem_na_lista(lista, item) para i, valor em obtenha_pares_indexados(lista) faça se valor == item então retorne verdadeiro fim fim retorne falso fim se tem_na_lista(cores, "Verde") então exiba("Tem verde! ?") fim
Exemplo: Fila de atendimento
local fila = {} -- Pessoas chegando tabela.insira(fila, "Maria") tabela.insira(fila, "João") tabela.insira(fila, "Ana") -- Atendendo (tira o primeiro) local atendido = tabela.remova(fila, 1) exiba("Atendendo: " .. atendido) -- Maria local atendido = tabela.remova(fila, 1) exiba("Atendendo: " .. atendido) -- João
Com a biblioteca de tabela, você pode criar listas, filas, pilhas e muito mais!