Skip to content

Funções nativas

Leonel Sanches da Silva edited this page Jun 5, 2024 · 5 revisions

Aleatoriedade

Delégua possui duas funções para geração de variáveis aleatórias.

aleatorio

Retorna um número real aleatório entre 0 e 1.

var numeroAleatorio = aleatorio();

escreva(numeroAleatorio);
// 0.8540051495195808

aleatorioEntre

Retorna um número inteiro aleatório entre os valores passados para a função. O primeiro parâmetro é o número mínimo e o segundo é o máximo. O valor gerado aleatoriamente nunca será igual ao número máximo passado para a função: sempre será um a menos que o máximo.

var numeroAleatorio = aleatorioEntre(1, 9);
escreva(numeroAleatorio); // Retornará um valor entre 1 e 8.

Conversões de tipos

inteiro

Converte um número flutuante ou texto, que não apresente letras, em um número inteiro.

// Variável para teste
var testeTexto = "111";

escreva(111 + inteiro(testeTexto));
// 222

real

Converte um número inteiro ou texto, que não apresente letras, em um número flutuante.

// Variável para teste
var testeTexto = "504.69";

escreva(0.01 + real(testeTexto));
// 504.7

texto

Transforma números flutuantes ou inteiros em texto.

// Variável para teste
var testeNumero = 123;

escreva("123" + texto(testeNumero));
// 123123

Funções para vetores

mapear

Percorre um vetor executando uma função para cada item desse mesmo vetor.

var vetor = [1, 2, 3];

var fn = funcao(valor){
  retorna valor * 2;
};

escreva(mapear(vetor, fn));
// [2, 4, 6]

ordenar

Delégua, assim como Égua, fornece a função ordenar() para realizar a ordenação dos valores em ordem crescente. Esta função só aceita vetores.

// Vetor de strings
var vetorNomes = ["Lucas", "Heictor", "Julio", "Brennus", "Arleson"];

// Vetor de números
var vetorNumeros = [1, 2, 6, 7, 3, 4];

vetorNomes = ordenar(vetorNomes);
escreva(vetorNomes);
// Saída: Arleson, Brennus, Heictor, Julio, Lucas

vetorNumeros = ordenar(vetorNumeros);
escreva(vetorNumeros);
// Saída: 1, 2, 3, 4, 6, 7

tamanho

Retorna o número de elementos que compõem um vetor.

// Vetor de strings
var vetorNomes = ["Lucas", "Heictor", "Julio", "Brennus", "Arleson"];
var texto = "Egua";

escreva(tamanho(vetorNomes));
// 5

escreva(tamanho(texto));
// 4

tupla

Transforma um vetor em uma tupla. Vetor deve ter entre 2 e 10 elementos.

escreva(tupla([1, 2, 3, 4])) // Saída: {"primeiro":1,"segundo":2,"terceiro":3,"quarto":4}