Olá pessoal.
Estou com uma dúvida em C, já tentei fazer de várias formas, mas todas falharam.
É o seguinte, eu estou fazendo um programa simples de criptografia. O usuário informa uma palavra ou frase, e o programa pega a posição da letra no alfabeto e substitui pelo número que ele está. Isso foi simples de fazer. Mas o problema é para descriptografar.
Imagine que o usuário tenha digitado o nome "Programa", a criptografia seria
"16 18 15 7 18 1 13 1", (separei por espaço, para ficar melhor de identificar).
Como posso fazer pra somente em uma posição do vetor, armazenar o '16', e na segunda posição '18', e assim por diante, pra eu poder fazer a comparação com o array que contém os números e informar o array das letras?
Porque ele sempre pega o primeiro valor, que é '1', e na segunda posição o '6', e assim vai indo até o fim.
Não estou conseguindo terminar o programa. Alguém poderia me dar uma ajuda de como fazer ?
O código da criptografia está assim:
Estou com uma dúvida em C, já tentei fazer de várias formas, mas todas falharam.
É o seguinte, eu estou fazendo um programa simples de criptografia. O usuário informa uma palavra ou frase, e o programa pega a posição da letra no alfabeto e substitui pelo número que ele está. Isso foi simples de fazer. Mas o problema é para descriptografar.
Imagine que o usuário tenha digitado o nome "Programa", a criptografia seria
"16 18 15 7 18 1 13 1", (separei por espaço, para ficar melhor de identificar).
Como posso fazer pra somente em uma posição do vetor, armazenar o '16', e na segunda posição '18', e assim por diante, pra eu poder fazer a comparação com o array que contém os números e informar o array das letras?
Porque ele sempre pega o primeiro valor, que é '1', e na segunda posição o '6', e assim vai indo até o fim.
Não estou conseguindo terminar o programa. Alguém poderia me dar uma ajuda de como fazer ?
O código da criptografia está assim:
Código PHP:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void cript(char pl[])
{
char alfabeto[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char alfabetomin[] = "abcdefghijklmnopqrstuvwxyz";
system("cls");
printf("CRIPTOGRAFADO: ");
for (int i=0; i<strlen(pl); i++)
{
if (pl[i] == ' ')
{
printf(" ");
}
for (int j=0; j<strlen(alfabeto); j++)
{
if ((pl[i] == alfabeto[j]) || (pl[i] == alfabetomin[j]))
{
printf("[%d]",j+1);
}
}
}
}
int main()
{
char palavra[50];
printf("Informe a palavra: ");
gets(palavra);
cript(palavra);
fflush(stdin);
getchar();
}
Comment