guiobom131 0 Denunciar post Postado Dezembro 15, 2007 Este tutorial trata de um exemplo fácil de codificação de textos, você pode se basear nele para criar uma busca por palavras ou letras. O resultado final está aqui. Este exemplo troca os números da mensagem por "<"+o_numero+">" para que sejam distigüidos na hora de descodificar, e busca na mensagem a ser codificada caractes iguais aos da senha e os troca por número. Parece confuso, mas vou dar exemplo: Mensagem: Você leu Harry Potter 2? Senha: imasters Código final: Você l5u H266y Po4456 <2>? Veja como "leu" virou "l5u", o "e" foi trocado por 5, que é o índice correspondente de "e" na senha --> i=(0), m=(1), a=(2), s=(3), t=(4), e=(5), r=(6), s=(7) (Lembre-se, o 1º caractere é de índice 0) Chega de papo vamos ao Flash. Crie um campo de texto de entrada com nome "texto", um outro campo de texto de entrada com nome "senha" e um botão. No botão insira o código: on (release, keyPress "<Enter>") { //Somente se a senha tiver pelo menos um caractere a tradução será efetuada if (senha.text != "") { //Atribui-se o valor das variáveis mensagem = texto.text; palavra = senha.text; //Faz uma varredura desde a início até o fim da mensagem em busca de números for (i=0; i<mensagem.length; i++) { //Verifica se o caractere de índice (i) é um número if (mensagem.charAt(i) == 0 || mensagem.charAt(i)) { //Se for, será substituído por <Nº> resultado += "<"+mensagem.charAt(i)+">"; } else { //Se não for número, por enquanto, não será substituído por nada resultado += mensagem.charAt(i); } } //Agora os números já foram trocados e começará a trocar as letras de acordo com a senha texto.text = resultado; resultado = ""; mensagem = texto.text; palavra = senha.text; //Faz a comparação entre cada caractere da senha com a mensagem for (d=0; d<palavra.length; d++) { for (i=0; i<mensagem.length; i++) { //Se um caractere da mensagem coincidir com um caractere da senha, esse será substituído por número, correspondente ao índice do caractere na senha if (mensagem.charAt(i).toUpperCase() == palavra.charAt(d).toUpperCase()) { resultado += d; } else { //Se não, ele não será alterado resultado += mensagem.charAt(i); } } //Agora a mensagem já está codificada, basta mostrá-la na caixa de texto texto.text = resultado; resultado = ""; mensagem = texto.text; palavra = senha.text; } } } Pronto!Agora para descodificar, crie um outro arquivo (ou se preferir, um outro quadro neste mesmo, não esqueça do stop()) Novamente, crie um campo de texto de entrada com nome "texto", um outro campo de texto de entrada com nome "senha" e um botão. No botão insira o código: on (release, keyPress "<Enter>") { //Atribui as variáveis mensagem = texto.text; palavra = senha.text; //Faz uma busca em todas as palavras da mensagem e da palavra for (d=0; d<palavra.length; d++) { for (i=0; i<mensagem.length; i++) { //Se for localizado os símbolos de números (<Nº>), ele não será alterado por enquanto, ele só será descodificado no final if (mensagem.indexOf("<0>", i) == i || mensagem.indexOf("<1>", i) == i || mensagem.indexOf("<2>", i) == i || mensagem.indexOf("<3>", i) == i || mensagem.indexOf("<4>", i) == i || mensagem.indexOf("<5>", i) == i || mensagem.indexOf("<6>", i) == i || mensagem.indexOf("<7>", i) == i || mensagem.indexOf("<8>", i) == i || mensagem.indexOf("<9>", i) == i) { resultado += mensagem.charAt(i); resultado += mensagem.charAt(i+1); resultado += mensagem.charAt(i+2); //Acrescenta-se 2 unidades em i para que essa sequência não seja avaliada novamente i += 2; //Se não for localizado o símbolo dos números, verificará se há algo a ser substituído } else { //Se o caractere for um número (por isso havia a necessidade de criar os símbolos para os números, se não eles seriam trocados por letras), será substituído pelo caractere correspondente da palavra if (mensagem.charAt(i) == d) { resultado += palavra.charAt(d); //Se não, nada será mudado e o caractere será acrescentado sem modificações } else { resultado += mensagem.charAt(i); } } } //Agora só falta trocar os símbolos de números por números, já que não serão mais confundidos texto.text = resultado; resultado = ""; mensagem = texto.text; palavra = senha.text; } for (i=0; i<mensagem.length; i++) { if (mensagem.indexOf("<0>", i) == i || mensagem.indexOf("<1>", i) == i || mensagem.indexOf("<2>", i) == i || mensagem.indexOf("<3>", i) == i || mensagem.indexOf("<4>", i) == i || mensagem.indexOf("<5>", i) == i || mensagem.indexOf("<6>", i) == i || mensagem.indexOf("<7>", i) == i || mensagem.indexOf("<8>", i) == i || mensagem.indexOf("<9>", i) == i) { resultado += mensagem.charAt(i+1); i += 2; } else { resultado += mensagem.charAt(i); } } //Mostra o resultado na janela de texto texto.text = resultado; resultado = ""; mensagem = texto.text; palavra = senha.text; } Espero que tenham gostado, qualquer dúvida postem, ok? http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.gif Compartilhar este post Link para o post Compartilhar em outros sites