Neste post iremos elaborar um script capaz de listar as n palavras que mais se repetem em um arquivo texto. A entrada consiste em um inteiro e um nome de arquivo.Exemplo: $ lua wordcount.lua 10 hinonacionalbrasileiro.txtQue ira listar as dez palavras mais utilizadas no hino nacional brasileiro.1 iterar sobre as linhas de um arquivo de texto:for linha in io.lines do print(linha) endonde io.lines() retorna uma funcao iteradora que em cada passagem pelo laco sera retornada uma linha do arquivo na variavel linha.2 iterar sobre cada palavra em uma string.for palavra in string.gmatch(linha, "%a+") do print(palavra) endonde string.gmatch() retorna uma funcao iteradora que em cada passagem do laco ira retorna uma string que case com o padrao informado no segundo parametro na chamada da funcao.3 Analisar estrutura de dados para contagempodemos utilizar uma tabela, com palavra e quantidade para realizar a contagem. De modo que passando a palavra como chave receberemos um int com a quantidade que ela apareceu no texto.Inicializando o table:contagem = {}Incrementando a quantidade da palavra:contagem[palavra] = contagem[palavra] + 1Devemos ter cuidado no seguinte cenario: Na primeira vez que a palavra sera inserida na contagem, ela nao possui nenhum valor associado a chave palavra. Receberemos portanto um nil, que nao pode ser somado com 1. Para contornar este problema utilizamos o operador or.contagem[palavra] = (contagem[palavra] or 0) + 1Dessa forma se a contagem[palavra] for nil (primeira vez) o operador or retornara o 0, caso contrario retornara a contagem[palavra].4 Retornando as n palavras mais utilizadasPara retornarmos as n palavras que mais se repetem no texto, devemos localizar as n maiores entradas da table contagem.podemos fazer isso, ordenando a tabela:table.sort(contagem)e em seguida, percorrendo as n primeiras entradas:n = arg[2]for palavra,quantidade in ipairs(contagem) do print(palavra, quantidade) n = n - 1 if (n == 0) then break endend5 Conclusao codigo completo:arquivo = arg[1]contagem = {}for linha in io.lines(arquivo) do for palavra in string.gmatch(linha, "%a+") do contagem[palavra] = (contagem[palavra] or 0) + 1 endendtable.sort(contagem)n = arg[2]for palavra,quantidade in ipairs(contagem) do print(palavra, quantidade) n = n - 1 if (n == 0) then break endend Voce ja deve ter baixado o Android SDK. Agora voce precisa configurar o seu ambiente de desenvolvimento.Instalando no WindowsO seu pacote e um arquivo executavel que inicia um instalador. O instalador verifica se sua maquina possui as ferramentas requeridas, como um JDK corretamente instalado, e as instala se for necessario. O instalador entao salva o Android SDK Tools em um local padrao (ou voce pode especificar o local).Tome nota do nome e localizacao do diretorio do SDK no seu sistema - voce ira precisar desda referencia depois, quando estiver configurando o plugin ADT e quando estiver utilizando as ferramentas do SDK pela linha de comando.Uma vez que as ferramentas estao instaladas, o instalador se oferece para abrir o Android SDK Manager. Abra-o e continue com o processo de instalacao clicando em Next na direita.Instalando no MacO arquivo baixado e um .zip. Descompacte-o para um local seguro na sua maquina. Por padrao, os arquivos do SDK sao descompactados em um diretorio chamado android-sdk-mac_x86.Tome nota do nome e localizacao do diretorio do