"Avançar" letras

1. "Avançar" letras

Julio Alexander Sieg
jsieg1152

(usa Ubuntu)

Enviado em 16/09/2013 - 10:09h

Assim gente, sei que o assunto ficou meio estranho, mas o que eu preciso na verdade não é tão complicado assim, só que eu não sei fazer.

Estou fazendo um exercício de Cifra de Cézar.. então preciso que ao digitar a letra "A", ele cifre, ou seja, mude da letra "A" para letra, "D", avançando 3 casas.

Como que eu posso fazer isso ?




  


2. Re: "Avançar" letras

???
gokernel

(usa Linux Mint)

Enviado em 16/09/2013 - 10:29h


http://codepad.org/BVlamQHt


3. Re: "Avançar" letras

Julio Alexander Sieg
jsieg1152

(usa Ubuntu)

Enviado em 16/09/2013 - 11:00h

gokernel escreveu:


http://codepad.org/BVlamQHt


Báa cara, beleza. Deu certo.

Só mais uma dúvida, considerando que eu uso cout ao invés de
printf, como eu poderia fazer pra imprimir a letra e não o número ?






4. Re: "Avançar" letras

Clodoaldo Peres
clodoaldoPeres

(usa Ubuntu)

Enviado em 16/09/2013 - 11:39h

Soh um detalhe, a contagem naum vai dar certo no caso das ultimas 3 letras do alfabeto, pois qndo vc soma+3 ele troca pelo equivalente ASC então X==88,Y==89,Z==90 (decimal-maiuscula), por exemplo no caso do Z ele irá trocar por ']' que eh o equivalente ASC isto leva a não cumprir corretamente o algoritmo de criptografia cifra de César, sugiro (q eh uma maneira simples) que use um if especifico para estes casos inclusive para os mesmos caracteres minusculos.Cosulte a ASC II para mais info. Espero ter ajudado.


5. Re: "Avançar" letras

Julio Alexander Sieg
jsieg1152

(usa Ubuntu)

Enviado em 16/09/2013 - 11:44h

clodoaldoPeres escreveu:

Soh um detalhe, a contagem naum vai dar certo no caso das ultimas 3 letras do alfabeto, pois qndo vc soma+3 ele troca pelo equivalente ASC então X==88,Y==89,Z==90 (decimal-maiuscula), por exemplo no caso do Z ele irá trocar por ']' que eh o equivalente ASC isto leva a não cumprir corretamente o algoritmo de criptografia cifra de César, sugiro (q eh uma maneira simples) que use um if especifico para estes casos inclusive para os mesmos caracteres minusculos.Cosulte a ASC II para mais info. Espero ter ajudado.


Siim, tenho que cuidar esse detalhe mesmo. Valeu pela dica :D


6. Re: "Avançar" letras

???
gokernel

(usa Linux Mint)

Enviado em 16/09/2013 - 13:44h


" ... considerando que eu uso cout ao invés de printf, como eu poderia fazer pra imprimir a letra e não o número ?"

Isso nao sei como fazer em C++ .

Mas sei fazer usando sprintf:
sprintf (buf, "A: %c", i);







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts