Programa Criptografia Código Fonte
Por: renaneph • 23/3/2020 • Projeto de pesquisa • 857 Palavras (4 Páginas) • 175 Visualizações
#include
#include
#include
#include
char crip[128];
void maiusculas(char *texto){
int i;
for(i=0;i
{
texto[i] = toupper(texto[i]);
}
}
void somente_letras(char *texto){
int i,j=0;
char novo_texto[128];
for(i=0;i
if(texto[i]>='A' && texto[i]<='Z'){
novo_texto[j] = texto[i]; j++;
}
}
for(i=0;i
texto[i] = novo_texto[i];
}
texto[i] = '\0';
}
void cifrar(char *texto, char *chave, int cifra){
int i;
maiusculas(texto);
maiusculas(chave);
somente_letras(texto);
somente_letras(chave);
for(i=0;i
if(cifra == 1){
crip[i] = ((texto[i] - 'A') + (chave[i % strlen(chave)] - 'A')) % 26 + 'A';
}
else{
crip[i] = (texto[i] - chave[i % strlen(chave)] + 26) % 26 + 'A';
}
}
}
int main(int argc, char *argv[])
{
char texto[128],chave[128],m1[128],m2[128];
int opcao,cifra;
printf("Programa de Criptografia utilizando cifra de vigenere \n");
printf("\n\n\nOpcoes: ");
printf("\n1 - Criptografar");
printf("\n2 - Descriptografar");
do{
printf("\n\n Escolha uma opcao: ");
scanf("%d",&opcao);
fflush(stdin);
if(opcao!=1 && opcao!=2){
printf("\nOpcao invalida!\n");
}
}
while(opcao == 0);
switch(opcao){
case 0:
return 0;
case 1:
printf("\n Opcao Escolhida: Criptografar\n\n");
cifra = 1;
strcpy(m1, "Texto original");
strcpy(m2, "Texto criptografado");
break;
case 2:
printf("\n Opcao Escolhida: Descriptografar\n\n");
cifra = 2;
strcpy(m1, "Texto criptografado");
strcpy(m2, "Texto original");
break;
}
do{
printf("\nDigite o texto: ");
fgets(texto,128,stdin);
fflush(stdin);
if(texto[strlen(texto)-1]=='\n'){
texto[strlen(texto)-1]='\0';
}
if(!strlen(texto)){
printf("\nNao foi digitado nenhum texto!\n");
}
...