Ir ao conteúdo

Posts recomendados

Postado

Olá pessoal, estou fazendo um trabalho de faculdade e preciso de uma ajudinha pois estou com dificuldade em uma coisa!

 

Estou fazendo um programa que é como se fosse uma criptografia, no meu caso eu queria enviar a "senha" criptografada para um arquivo .txt, a parte da criptografia eu consegui fazer tranquilo, mas a senha digitada pelo usuário usa a mesma variável de quando a senha é editada pela criptografia, EX( senha_criptografada = senha;), quando vou mandar a senha criptografada para o arquivo .txt a senha digitada vai junto para o arquivo EX(senha digitada: 123 | senha criptografada:321) fica salvo no arquivo .txt assim(123321).

 

Álguem poderia dar uma força!?

Postado
3 minutos atrás, Asrety disse:

 

Teria como postar o código, assim facilitaria a identificação do problema!

#include <stdio.h> 
#include <stdlib.h>
#include <string.h>
#include <locale.h>

 char trocar_letras_5(char letra);
 char trocar_letras_6(char letra);
 char trocar_letras_7(char letra);
 char trocar_letras_8(char letra);
 char trocar_letras_9(char letra);
 char trocar_letras_10(char letra);
 
 int main(int argc, char *argv[]) {          
     
     FILE *fp;
     fp = fopen("file.txt", "a");
     
     char nome[20];     
     char senha[10];
     char senha1[10]; 
    char senha_troca[10];         
     int tam, cont;
    int i;
    
    setlocale(LC_ALL,"Portuguese");
              
     printf("FAÇA O CADASTRO");     
     printf("\n\nInsira seu nome:");     
     scanf("%s", &nome);     
     printf("Crie uma senha (min de 5 caracteres e max de 10):");     
     scanf("%s", &senha);
     fputs (senha, fp);
     i=0;     
     tam = strlen(senha);              
         cont=0;
         while ((tam >=0  && tam <= 4) || (tam >= 11 ))
        {             
             printf("\n***POR FAVOR CUMPRA COM A LIMITAÇÃO DE CARACTERES***");
            printf("\nCrie uma senha (min de 5 caracteres e max de 10):");             
             scanf("%s", &senha);             
             tam = strlen(senha);
            cont=cont+1;             
         }
             
             
             if(tam == 5)
            {
                while(senha != '\0')
                {
                    senha1=trocar_letras_5(senha);
                    i++;
                }            
             }else
             if(tam == 6)
            {
                while(senha != '\0')
                {
                    senha1=trocar_letras_6(senha);
                    i++;
                }            
             }else
             if(tam == 7)
            {
                while(senha != '\0')
                {
                    senha1=trocar_letras_7(senha);
                    i++;
                }            
             }else
             if(tam == 😎
            {
                while(senha != '\0')
                {
                    senha1=trocar_letras_8(senha);
                    i++;
                }            
             }else
             if(tam == 9)
            {
                while(senha != '\0')
                {
                    senha1=trocar_letras_9(senha);
                    i++;
                }            
             }else
             if(tam == 10)
            {
                while(senha != '\0')
                {
                    senha1=trocar_letras_10(senha);
                    i++;
                }            
             }
             
     printf("\n\n SENHA TROCADA::%s", senha1);
     fputs (senha1, fp);
     
     return 0;
}

Postado
25 minutos atrás, paulo pinheiro 1301 disse:


     printf("FAÇA O CADASTRO");     
     printf("\n\nInsira seu nome:");     
     scanf("%s", &nome);     
     printf("Crie uma senha (min de 5 caracteres e max de 10):");     
     scanf("%s", &senha);


     fputs (senha, fp);      //Aqui

 

Bom, ainda sou iniciante em c, mas olhando o problema que você descreveu, esse fputs ai que é o causador do problema, pois você salva a senha ai, e dps no final salva a senha criptografada, ai deve ser por isso que ta salvando td junto, experimente tirar esse fputs logo dps de ler a senha, e uma dica que dou, quando você vai ler um vetor de char, uma string, não há necessidade de por & ok? um simples scanf("%s", senha); ja basta. 

  • Obrigado 1
Postado
11 minutos atrás, Asrety disse:

Bom, ainda sou iniciante em c, mas olhando o problema que você descreveu, esse fputs ai que é o causador do problema, pois você salva a senha ai, e dps no final salva a senha criptografada, ai deve ser por isso que ta salvando td junto, experimente tirar esse fputs logo dps de ler a senha, e uma dica que dou, quando você vai ler um vetor de char, uma string, não há necessidade de por & ok? um simples scanf("%s", senha) ja basta. 

Muito obrigado cara!!! não acredito que n percebi isso kk, valeu pela dica da string

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!