Toda linguagem de programação possui um conjunto de funções integradas que facilitam a vida do programador. Essas funções realizam cálculos aritméticos, trigonométricos e manipulação/conversão de dados comuns. Isso evita que o programador precise criar essas funcionalidades do zero em cada programa. Esse conjunto de funções é chamado de biblioteca.
⚠️ Para usar uma função, basta tratá-la como uma variável, ou seja, utilizá-la em qualquer lugar onde uma variável seria usada. A exceção é quando se trata do “lado esquerdo da seta” em um comando de atribuição. Uma função retorna um valor, em vez de receber um valor, como os programadores costumam dizer.
✳️ Funções numéricas
-
- Abs( expressão )
- Exp( base, expoente )
- Int( expressão )
- Log( expressão )
- LogN( expressão )
- Pi
- Quad( expressão )
- RaizQ( expressão )
- Rand
- RandI( limite )
✳️ Funções algébricas
-
- Abs( expressão )
- Int( expressão )
- Log( expressão )
- LogN( expressão )
- Quad( expressão )
- RaizQ( expressão )
✳️ Funções trigonométricas
-
- ArcCos( expressão )
- ArcSen( expressão )
- ArcTan( expressão )
- Cos( expressão )
- CoTan( expressão )
- GraupRad( expressão )
- RadpGrau( expressão )
- Sen( expressão )
- Tan( expressão )
Os valores colocados entre parênteses, como “expressão”, “base” e “expoente”, são os parâmetros ou argumentos que são fornecidos à função para que ela possa realizar seus cálculos e retornar um resultado que será utilizado no programa.
⚠️ Alguns autores também se referem a esses valores como argumentos da função. Algumas funções, como Pi e Rand, não requerem parâmetros, mas a maioria das funções possui um ou mais parâmetros. O valor dos parâmetros afeta o valor retornado pela função.
✍️ Exemplo
A seguir temos alguns exemplos que ilustram o uso destas funções.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
algoritmo "exemplo_funcoes" var a, b, c : real inicio a <- 2 b <- 9 // será escrito 7 na tela escreval( b - a ) // também será escrito 7 na tela escreval( abs( a - b ) ) // c recebe 3, a raiz quadrada de b, que é 9 c <- raizq( b ) // A fórmula da área do círculo é pi (3.1416) vezes raio ao quadrado... escreval("A área do circulo com raio " , c , " é " , pi * quad(c) ) // Um pouco de trigonometria... escreval("Um ângulo de 90 graus tem " , grauprad(90) , " radianos" ) // escreve 2 elevado à 9ª, que é 512 escreval( exp(a,b) ) // escreve 1, que é a parte inteira de 1.8, resultado de 9/(3+2) escreval( int( b / ( a + c ) ) ) fimalgoritmo |
Saída:
✳️ Funções para manipulação de cadeias de caracteres (strings)
- Asc (s : caracter) : Retorna um inteiro com o código ASCII do primeiro caracter da expressão.
- Carac (c : inteiro) : Retorna o caracter cujo código ASCII corresponde à expressão.
- Caracpnum (c : caracter) : Retorna o inteiro ou real representado pela expressão. Corresponde a StrToInt() ou StrToFloat() do Delphi, Val() do Basic ou Clipper, etc.
- Compr (c : caracter) : Retorna um inteiro contendo o comprimento (quantidade de caracteres) da expressão.
- Copia (c : caracter ; p, n : inteiro) : Retorna um valor do tipo caracter contendo uma cópia parcial da expressão, a partir do caracter p, contendo n caracteres. Os caracteres são numerados da esquerda para a direita, começando de 1. Corresponde a Copy() do Delphi, Mid$() do Basic ou Substr() do Clipper.
- Maiusc (c : caracter) : Retorna um valor caracter contendo a expressão em maiúsculas.
- Minusc (c : caracter) : Retorna um valor caracter contendo a expressão em minúsculas.
- Numpcarac (n : inteiro ou real) : Retorna um valor caracter contendo a representação de n como uma cadeia de caracteres. Corresponde a IntToStr() ou FloatToStr() do Delphi, Str() do Basic ou Clipper.
- Pos (subc, c : caracter) : Retorna um inteiro que indica a posição em que a cadeia subc se encontra em c, ou zero se subc não estiver contida em c. Corresponde funcionalmente a Pos() do Delphi, Instr() do Basic ou At() do Clipper, embora a ordem dos parâmetros possa ser diferente em algumas destas linguagens.
✍️ Exemplo
A seguir temos alguns exemplos que ilustram o uso destas funções.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
algoritmo "exemplo_funcoes2" var a, b, c : caracter inicio a <- "2" b <- "9" // será escrito "92" na tela escreval( b + a ) // será escrito 11 na tela escreval( caracpnum(b) + caracpnum(a) ) // será escrito "62" na tela escreval( numpcarac(3+3) + a ) c <- "Brasil" // será escrito "BRASIL" na tela escreval(maiusc(c)) // será escrito 6 na tela escreval(compr(c)) b <- "O melhor do Brasil" // será escrito 13 na tela escreval(pos(c,b)) // será escrito 66 na tela - código ASCII de "B" escreval(asc(c)) a <- carac(65) + carac(66) + carac(67) // será escrito "ABC" na tela escreval(a) fimalgoritmo |
Saída:
—
📙 Livro
-
- “Aprendendo Algoritmo com Visualg” <https://amzn.to/3DeiwxN>
Rafael Soares de Almeida
- “Aprendendo Algoritmo com Visualg” <https://amzn.to/3DeiwxN>
—
Deixe seus comentários logo abaixo.
*Atualizado em 16 de julho de 2023