Gostei muito mesmo desse trabalho,
Muito interessante como você usou as funções "básicas" para criar um conversor binário-decimal.
Acho que quem consegue fazer isto, é porque já sabe muito e tem muita criatividade.
Parabéns aos dois senhores.
Gostei muito mesmo desse trabalho,
Muito interessante como você usou as funções "básicas" para criar um conversor binário-decimal.
Acho que quem consegue fazer isto, é porque já sabe muito e tem muita criatividade.
Parabéns aos dois senhores.
info
Grupo: Herói
Registrado: 28/11/10
Posts: 3.4k
Reputação: +585
Gênero: Masculino

info
Grupo: Visconde
Registrado: 03/02/09
Posts: 361
Reputação: +200
Char no Tibia: Fearless Man
Eu e MatheusMkalo estamos estudando LUA mais a fundo, com o intuito de desenvolver códigos mais avançados e consequentemente, ampliar nossos conhecimentos na linguagem.
Essas duas funções foram desenvolvidas por nós com a finalidade única de estudo. Possivelmente já existem outras e talvez seja até mesmo inútil.
Aqui estão elas:
math.bin:
math.bin = function(n) local num = {} if type(n) == "number" then while math.floor((n / 2)) > 0 do table.insert(num,math.floor((n%2))) n = math.floor(n / 2) end table.insert(num, 1) else print("\aBad number to convert.") end return string.reverse(tostring(table.concat(num))) endmath.dec:
math.dec = function(n) local n = string.reverse(tostring(n)) local firstTab = {} for i in string.gmatch(tostring(n), ".") do table.insert(firstTab,i) end local secTab = {} for i,v in ipairs(firstTab) do table.insert(secTab, math.pow(2,i)*v) end local num = 0 for i = 1, #secTab do num = num + secTab[i] end return num/2 endExemplo de uso:
Para que servem?
math.bin serve para converter números decimais (50,25,30,9,87, ...) em números binários (110010,11001,11110,1001,1010111, ...).
math.dec faz o inverso, converte números binários (110010,11001,11110,1001,1010111, ...) em decimais (50,25,30,9,87, ...).
Caso achem alguma finalidade, bom uso!
Créditos : Apocarai & MatheusMkalo
flw
Editado Junho 15 por apocarai