Ir para conteúdo
Fórum Script Brasil
  • 0

Critografia


lulasantana

Pergunta

Boa tarde, meus caros.

Necessito do auxílio de vocês, experts em C, para solucionar um trabalho da faculdade.

Sou verde em programção e apesar de assimilar bem os comandos, funções, etc, sinto dificuldade em fazer o programa sair do papel.

Bem, o trabalho é esse abaixo:

O trabalho consiste em elaborar um programa em C para criptografar e descriptografar uma frase com no máximo 100 caracteres. O programa deve ler a frase digitada (maiusculos) e mostrar a frase digitada, a frase criptografada e em seguida descriptografar e mostrar a frase original. A técnica de criptografia é explicada abaixo:

1. Criar três cadeias de caracteres da seguinte forma:

a. normal = “ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%¨&*()_+-=”;

b. cripto1= “QWERTYUIOPASDFGHJKLZXCVBNM=-+_)(*&¨%$#@!0987654321”;

c. cripto2= “1234567890-=!@#$%¨&*()_+ZXCVBNMASDFGHJKLQWERTYUIOP”;

2. Para construir a frase criptografada faça o seguinte: para o primeiro caracter (não interessa se é ‘E’ ou ‘A’) da frase digitada procurar esse caracter na cadeia normal e substituí-lo pelo caracter de mesma posição na cadeia cripto1. Quando o caracter ‘E’ aparecer você deve passar a utilizar a cadeia cripto2, não importa em qual cadeia você esteja. Quando o caractere ‘A’ aparecer você deve passar a utilizar a cadeia cripto1, não importa em qual cadeia você esteja. Se nenhum dos caracteres ‘E’ ou ‘A’ aparecerem você permanece na cadeia que está utilizando.

3. Para decriptografar basta seguir o processo inverso.

Desde já agradeço a colaboração de todos!

Editado por lulasantana
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Galera verifiquem e vejam onde estou errando...

#include <stdio.h> // Biblioteca de entrada e saída de dados

#include <stdlib.h> //Biblioteca para utilizar a vetorização

#include <ctype.h> //Biblioteca para utilizar a função TOUPPER (Maiúsculas)

#include <string.h> //Biblioteca para manipulação d

#include <conio.h>

int main(){

char frase[100];

int i, j, l, tamanho = strlen(frase);

printf ("Digite uma frase:");

gets (frase);

strupr(frase);

char normal[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%¨&*()_+-=";

char cripto1[] = "QWERTYUIOPASDFGHJKLZXCVBNM=-+_)(*&¨%$#@!0987654321";

char cripto2[] = "1234567890-=!@#$%¨&*()_+ZXCVBNMASDFGHJKLQWERTYUIOP";

for (i=0; i<tamanho; i++){

for (j=0; j<i+1; j++){

if (frase==normal[j])

frase=cripto1[j];

printf ("%s",frase);

getch();

}

}

}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...