• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

ptuga

Criar programa java

8 mensagens neste tópico

Amigos,

Sou novato na programação e tenho este exercicio para fazer, mas não sei nem onde começar.

Alguem me pode ajudar.

Fico muito grato.

Desenhe um programa que leia uma linha de texto a partir do teclado e escreva a linha

codificada ou descodificada no écran, utilizando a seguinte chave:

| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z |

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

| z | y | x | w | v | u | t | s | r | q | p | o | n | m | l | k | j | i | h | g | f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |

Cada caracter deve ser transformado no caracter correspondente de acordo com a chave

de codificação/descodificação. O programa deve perguntar ao utilizador se pretende

codificar ou descodificar o texto.

exemplo :

--------------------------------------------------------------------------------------------------

Qual a palavra? universidade

C/D (Codificar/Descodificar)?c

Palavra codificada: 5ch4l87hmpml

Qual a palavra? np6behnp

C/D (Codificar/Descodificar)?d

Palavra descodificada: catolica

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Que tipos de estruturas de dados conheces ? Já ouviste falar de  Maps  ? Também dá para fazer com 2 arrays por exemplo... depende de onde te quiseres meter....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Que tipos de estruturas de dados conheces ? Já ouviste falar de  Maps  ? Também dá para fazer com 2 arrays por exemplo... depende de onde te quiseres meter....

Basta um array, já que a codificação utiliza o array ao contrário.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Basta um array, já que a codificação utiliza o array ao contrário.

Realmente nem tinha reparado.. sendo assim nem array precisa...basta usar a tabela ascii.. o código do caracter..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desde já agradeço a vossa ajuda,

Mas perdoem-me de vos pedir mais isto, seria possivel, enviarem-me codigo para eu poder pegar?

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desde já agradeço a vossa ajuda,

Mas perdoem-me de vos pedir mais isto, seria possivel, enviarem-me codigo para eu poder pegar?

Obrigado

O que é que já tens feito ?  Começa a fazer e vais expondo o teu código e as tuas dúvidas....

Em relação à tabela ascii se for assim que desejas fazer.... o ponto chave é que as letras não se encontram a seguir aos números...logo possivelmente terás que tratar separadamente....

Podes dar uma vista de olhos aqui...

http://www.asciitable.com

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Eis uma solução simples:

começas por inicializar um array com a chave:

| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z |

basta um array porque o outro é igual mas ao contrario

depois de leres a string da consola, começas por percorrer a string caracter a caracter (podes usar um ciclo for e o metodo String.charAt(int i) para obter o caracter na posição i da string)

para cada caracter, procuras no array da chave qual o indice em que se encontra, a esse indice podemos chamar-lhe ''posiçao'.

o caracter codificado estara no indice: tamanho _total_do_array  -  posicão

ex: o caracter 'a' esta no indice 10 logo a codificação deste caracter esta na posição: 35 - 10 = 25 que é o caracter 'p'

a cada passo vais construindo a string codificada, concatenando os caracteres codificados. et voilá

espero ter ajudado...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora