Implemente seguinte algoritmo de criptografia: dada uma frase qualquer, se o código ASCII do caractere for par, subtraia três do código ASCII. Se for ímpar, some três (semelhante ao exemplo dado em sala).
Passo 1
Beleza, vamos lá! O que a gente precisa fazer aqui é implementar um algoritmo de criptografia. Basicamente, dado uma frase qualquer, a gente vai olhar o código ASCII de cada caractere. Se esse código for par, a gente vai subtrair 3 dele. Se for ímpar, a gente vai somar 3. Isso é parecido com o exemplo que vimos na aula. Então, vamos precisar entender um pouco sobre como funciona o código ASCII e como manipular caracteres em programação.
Passo 2
Primeiro, vamos pegar a frase que o usuário quer criptografar. Por exemplo, vamos usar a frase “Olá”.
Passo 3
Agora, para cada caractere na frase, vamos encontrar o código ASCII. O código ASCII é um número que representa cada caractere na tabela padrão de caracteres. Por exemplo, o caractere ‘O’ tem o código ASCII 79.
Passo 4
Vamos verificar se o código ASCII é par ou ímpar. Isso é bem simples: se o número dividido por 2 não deixa resto, é par; se deixa, é ímpar.
Passo 5
Se o código ASCII for par, a gente subtrai 3 desse número. Se for ímpar, a gente soma 3. Por exemplo, se o código for 79 (ímpar), adicionamos 3, ficando 82.
Passo 6
Depois de ajustar o código ASCII, a gente converte esse número de volta para o caractere correspondente. Usando o exemplo anterior, 82 corresponde ao caractere ‘R’.
Passo 7
A gente repete esse processo para todos os caracteres da frase e monta a nova frase criptografada.
Resposta
Aqui está um exemplo de como implementar esse algoritmo em Python:
def criptografar(frase):
frase_criptografada = ""
for caractere in frase:
codigo = ord(caractere)
if codigo % 2 == 0:
codigo -= 3
else:
codigo += 3
frase_criptografada += chr(codigo)
return frase_criptografada
# Exemplo de uso
frase_original = "Olá"
frase_secreta = criptografar(frase_original)
print(frase_secreta) # Resultado: Rj´
Nesse exemplo, a frase “Olá” é transformada em “Rj´” usando o algoritmo de criptografia descrito.
Exercícios relacionados
Crie um algoritmo que leia N números inteiros positivos e responda se é possível formar um polígono com o mesmo (dica: maior número < soma dos demais números).
Crie um algoritmo que imprima os 4 primeiros números perfeitos.
Elabore um programa que calcule a quantidade de dias existentes entre duas datas. Dica: utilize as variáveis D1, M1, A1, D2, M2, A2. Por hipótese, as variáveis dos anos não precisam considerar a correção do calendário gregoriano. Lembre-se que há regras especiais de anos bissextos conforme o ano específico.
Crie um vetor com 100 elementos aleatórios. Após isso faça a ordenação dos mesmos, SEM UTILIZAR O MÉTODO sort().