Postado Janeiro 2, 2012 13 anos Este é um post popular. Operadores Aritméticos e Bibliotecas Aula 4 Na aula anterior vimos como chamar funções e conhecemos as funções print e type. Nesta aula apenas vou reforçar a aula anterior ensinando as funções mais básicas e usadas que são nativas da linguagem Lua, ou seja, não são funções criadas para Open Tibia Server, e sim funções prontas que já estão incluídas na linguagem Lua, e vou ensinar também os operadores aritméticos. Vamos começar com eles. Os Operadores Aritméticos OBS: Você pode fazer seus testes no editor e interpretador Lua usando a função print para exibir os resultados. Enquanto você quiser mecher em Lua (Ou em qualquer outra linguagem de programação), você vai precisar fazer contas matemáticas, sejam elas contas simples como uma adição, ou até mesmo contas complexas, incluindo fórmulas e etc... Os operadores aritméticos funcionam exatamente como na matemática que você está acostumado na escola. Os operadores aritméticos que você provavelmente conhece (A não ser que esteja usando fraldas) são: Adição (+) Subtração (-) Multiplicação (*) Divisão (/) Você já pode começar a testá-los: print(3+2) print(3-2) print(3*2) print(3/2) O resultado será: 5 1 6 1.5 OBS: Se este não for o resultado, procure a assistência técnica pois seu sistema operacional só pode ser pirateado... Existem mais 3 operadores aritméticos que você talvez não conheça. São eles: Módulo (%) Exponencição (^) Unário (-) 12 18 As Bibliotecas Vimos na aula anterior que existem vários tipos de dados, como por exemplo, strings e números. Assim como estes tipos, existem bibliotecas (Conjuntos de funções) para manipular estes tipos. Vamos conhecer as funções mais básicas das bibliotecas mais usadas. A Biblioteca Padrão: A biblioteca padrão não contém funções para manipular especificamente um tipo de dado, e sim o ambiente de programação. Suas funções mais básica, importantes e mais usadas são: Sintaxe: Modo correto de escrever o código. OBS: O que estiver entre [ e ] são argumentos opcionais, ou seja, você pode defini-los ou não. Quando houver três pontos (...) significa que você pode enviar quantos argumentos desejar. dofile(filename) Abre o arquivo e o executa como um bloco de código Lua. Otima função para carregar bibliotecas criadas em Lua. print(···) Escreve uma ou mais frases no interpretador. Ótima para fazer testes. A função suporta todos os tipos de dados. tonumber(value [, base]) Transforma um valor em número. Se não for possível converter, retorna 'nil'. tostring(value) Transforma um valor em string. type(value) Retorna o tipo de um valor. Funções de bibliotecas padrões assert(v [, message]) collectgarbage(opt [, arg]) dofile(filename) error(message [, level]) getfenv([f]) getmetatable(object) ipairs(t) load(func [, chunkname]) loadfile([filename]) loadstring(string [, chunkname]) next(table [, index]) pairs(t) pcall(f, arg1, ···) print(...) rawequal(v1, v2) rawget(table, index) rawset(table, index, value) select(index, ···) setfenv(f, table) setmetatable(table, metatable) tonumber(e [, base]) tostring(e) type(v) unpack(list [, i [, j]]) xpcall(f, err) module(name [, ···]) require(modname) A Biblioteca Math: A biblioteca Math serve para manipular operações aritméticas, números, etc... math.ceil(x) Retorna um valor inteiro maior que x mais próximo de x. (Em outras palavras, arredonda para cima.) math.floor(x) Retorna um valor inteiro menor que x mais próximo de x. (Em outras palavras, arredonda para baixo.) math.random([m [, n]]) Retorna um valor pseudo-randômico entre m e n baseado em uma semente (Um número que determina a sequência). math.randomseed(value) Altera a semente do pseudo-randomismo. todas as funções de biblioteca math math.abs(x) math.acos(x) math.asin(x) math.atan(x) math.atan2(y, x) math.ceil(x) math.cos(x) math.cosh(x) math.deg(x) math.exp(x) math.floor(x) math.fmod(x, y) math.frexp(x) math.ldexp(m, e) math.log(x) math.log10(x) math.max(x, ···) math.min(x, ···) math.modf(x) math.pow(x, y) math.rad(x) math.random([m [, n]]) math.randomseed(x) math.sin(x) math.sinh(x) math.sqrt(x) math.tan(x) math.tanh(x) A Biblioteca String: A biblioteca string manipula strings... string.gsub(s, pattern, repl [, n]) Procura na string 's' por valores iguais à string 'pattern' e substitui pela string 'repl'. string.len(s) Esta função retorna o tamanho da string 's'. string.lower(s) Retorna a string 's' com as letras em minúsculas. string.upper(s) Retorna a string 's' com as letras em maiúsculas. string.rep(s, n) Retorna a string 's' repetida 'n' vezes. string.reverse(s) Retorna a string 's' ao contrário. string.sub(s, i [, j]) Retorna a parte da string 's' entre as posições i e j. todas as funções da biblioteca string string.byte(s [, i [, j]]) string.char(···) string.dump(function) string.find(s, pattern [, init [, plain]]) string.format(formatstring, ···) string.gmatch(s, pattern) string.gsub(s, pattern, repl [, n]) string.len(s) string.lower(s) string.match(s, pattern [, init]) string.rep(s, n) string.reverse(s) string.sub(s, i [, j]) string.upper(s) A Biblioteca OS: Esta biblioteca serve para pegar valores ou manipular o sistema operacional, como por exemplo, pegar a data. os.clock() Retorna o tempo de execução do script, em segundos... os.date([format [, time]]) Retorna a data baseada no formato 'format'. os.time([table]) Retorna um número correspondente à hora atual. Todas as funções biblioteca OS os.clock() os.date([format [, time]]) os.difftime(t2, t1) os.execute([command]) os.exit( ) os.getenv(varname) os.remove(filename) os.rename(oldname, newname) os.setlocale(locale [, category]) os.time([table]) os.tmpname()[/center] [center][/spoiler][/center] [center][size=4]Exercícios:[/size] Pratique o uso das funções das bibliotecas math e string. [/center] [center][size=3][font=georgia,serif]Creditos:[/font][/size][/center] [center][size=3][font=georgia,serif]99% Skyen Hasus[/font][/size][/center] [center][size=3][font=georgia,serif]1% Vittu[/font][/size][/center] [size=3][font=georgia,serif]Aula 5 Variaveis e Comentarios[/font][/size] Vamos ver um por um: O Operador de Módulo (%): Este operador vai lhe dar o resto de uma divisão, por exemplo, o módulo de 3 por 2 é 1, pois 3 dividido por 2 dá 2 e sobra 1. print(3%2) 1 O Operador de Exponencição (^): Este operador vai lhe dar o valor de uma potência, por exemplo, a potência de 3 por 2 é 9, pois 3 elevado a 2 dá 9. print(3^2) 9 O Operador Unário (-): Este operador vai lhe dar o inverso de um valor, por exemplo, o inverso de 3 é -3, pois 3 vezes -1 dá -3. print(-3) -3 Prioridades Aritméticas (( e )): Existem também as prioridades aritméticas, que devem ser definidas com ( para iniciar e ) para finalizar. Por exemplo: print(3+3*3) print((3+3)*3) Editado Janeiro 18, 2012 13 anos por Vittu (veja o histórico de edições) www.patronum.online
Postado Julho 15, 2014 10 anos Muuuuuuito bom, ja sei java e C, quero aprender Lua agora, e estou aprendendo... Espero que até o fim eu ja tenha uma boa base. Obrigado!
Postado Julho 15, 2014 10 anos Perfeito o tutorial, ótimo para quem está aprendendo .. reputado. STYLLER OT 2022
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.