Bom Dia!
Estou com a seguinte proposta de trabalho: Devo realizar um algoritmo que lê uma frase e a criptografa salvando em um arquivo.txt. Por ser simples resolvi utilizar a cifra de cesar, porém deparei alguns problemas que preciso resolver. Como preciso criptografar uma frase, preciso que o algoritmo entenda que depois dos "espaços" existe mais texto a ser criptografado, e que ele criptografe o espaço tambem, e gostaria que de "A" ele passasse para "Z" na hora das somas.
Abaixo segue o algoritmo com uma criptografia que utilizei, porém ela não funciona quando inserida uma frase contendo espaços. Por favor me ajudem
PS: sei que ele não está inserindo a frase correta no arquivo, irei corrigir depois de acertar a criptografia.
#include <stdio.h>
#include <string.h>
int main(int argc,char* argv[]){
FILE *pont_arq; //CRIA VARIAVEL PONTEIRO PARA ARQUIVO
char frase[100]; //VARIAVEL DA FRASE INSERIDA
int i=0; //VARIAVEL DO CONTADOR PARA O FOR
int chave,op; //VARAIVEL CHAVE DE CRIPTOGRAFIA E OPÇÃO DE MENU
//INTERFACE INICIAL A SER APRESENTADA PARA O USUARIO
printf("\n _______________________________________________________________________\n");
printf("| |\n");
printf("| ENCRIPT SOFT ver.1.0.0.0.0.0.0 CIFRA DE CESAR |\n");
printf("| Universidade Paulista - UNIP |\n");
printf("| |\n");
printf("| FACA SUA ESCOLHA |\n");
printf("| |\n");
printf("| 1.................................CRIPTOGRAFAR UMA MENSAGEM |\n");
printf("| 2..............................DESCRIPTOGRAFAR UMA MENSAGEM |\n");
printf("| 0..........................................SAIR DO PROGRAMA |\n");
printf("| |\n");
printf("|_______________________________________________________________________|\n");
scanf("%d",&op); //LÊ A OPÇÃO DESEJADA
switch(op){ //INICIO DAS EXECUÇÕES DO MENU
case 1:
//CRIANDO O ARQUIVO .TXT COM NOME "ARQUIVO_PALAVRA"
pont_arq = fopen("arquivo_palavra.txt", "w");
//TESTANDO SE O ARQUIVO FOI REALMENTE CRIADO
if(pont_arq == NULL)
{
printf("Erro na abertura do arquivo!");
return 0;
}
//INICIO
printf("\n\nEscreva uma chave:");
scanf("%d",&chave);
printf("\nDigite a frase a ser encriptada:");
scanf("%s",frase);
printf("\n\nFrase encriptada com sucesso!\n\n");
printf("Encriptacao: ");
for(i=0;i<strlen(frase);i++)
{
int enc=(int)frase+chave;
printf("%c",(char)enc);
}
//USANDO FPRINT PARA ARMAZENAR A STRING NO ARQUIVO
fprintf(pont_arq, "%s", frase);
//FECHANDO ARQUIVO
fclose(pont_arq);
//MENSAGEM AO FINAL DA OPÇÃO
printf("O arquivo foi criado com sucesso!");
printf("\n\n");
system("pause");
break;
}