Ir ao conteúdo

Posts recomendados

Postado

Ola pessoal! Estou cursando informática e como um projeto recebi a tarefa de fazer uma bonboniere em c.

O meu problema é que gostaria de armazenar os dados dos usuarios e gostaria de criar um login para quando eles entrarem poderem ver seus dados, meu problema é que quando um usuário novo entra ele faz a senha e eu coloquei para a senha ser guardada em um arquivo txt, para assim se esse usuário quiser entrar depois.

Meu problema é que queria fazer um código que lêsse certa parte do arquivo txt para quando o usuário voltar eu puder guardar a senha em uma variavel.

ALGUEM PODERIA ME AJUDAR? PRECISO URGENTE POR FAVOR.

 

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

#define TAM 50
#define cont 8
struct Cadastro{
    char Nome[TAM];
    char DataNasc[TAM];
    int CPF[11];
    char Email[TAM];
    char  Senha[8];
    char  ConfirmacaoSenha[8];
    int opcadastro;
    int opcase1;
    FILE * dados;
    FILE * idinicial;
    int numid;
    int id;
    char senhausuario[8];
    FILE * senhas;
    int acharsenha;
    char aux;
    char senhaverificacao[8];
}C1;

struct Produtos{
    int CodProduto;
    int QuantidadeProdutos;
    int QuantidadeDeCadaTipo;
    int op;
    float PrecoProduto;
    float ResultadoMult;
    float ResultadoFinal;
    char produto[TAM];
}P1;

struct Cartaocredito{
    char Nome[TAM];
    char DataNasc[TAM];
    int  CodigoSeguranca;
    int  CPFtitular;
    int  numero;
    char Sobrenome[TAM];
}C2;

struct Boleto{
    char NomeSobrenome[TAM];
    char RuaAv[TAM];
    int  Numero;
    char Complemento[TAM];
    int  CEP;
    char Estado[TAM];
    char Cidade[TAM];
    char Bairro[TAM];
    int CPF;
}B;

struct Transferencia{
    char Nome[TAM];
    int  Agencia;
    int  Conta;
}T;

struct Pagamento{ 
    struct Cartaocredito C2;
    struct Boleto B;
    struct Transferencia T;
    int OpPagamento;
    FILE * Dadospag;
}P2; 

int cadastros(){
    int aux,i;
    int linha = 0;
    
    printf("\n Olá! Seja bem-vindo à BONBONCHOCOLAT!\n\n______________________________________\n\n 1- Tenho cadastro  2- Quero me cadastrar 3- Sair\n\n______________________________________\n:");
    scanf("%d", &C1.opcadastro);
    
    system("cls");
    switch(C1.opcadastro){
        case 1:
            printf("\n Digite o código da sua conta:");
            scanf("%d", &C1.id);
            
            printf("\n Digite sua senha: ");
            scanf("%s", &C1.senhausuario);
            
            C1.senhas= fopen("Senhas.txt","r");
            
            C1.acharsenha=C1.id*8;
            C1.aux= C1.acharsenha-8;
            
            for(i=0;i<C1.acharsenha;i++){
                fgets(C1.Senha,cont,C1.senhas);
                C1.senhaverificacao=C1.Senha;
            }
            
            if(strcmp(C1.Senha,C1.senhausuario)==0){
                printf("\n Senha correta");
            }
            printf("\n %s", C1.senhaverificacao);
            system("pause");
                fclose(C1.senhas);
                break;
                
        case 2:
            
                C1.idinicial = fopen("ids.txt","r");
                fscanf(C1.idinicial,"%d", &C1.numid);
                
                C1.id=C1.numid+1;
                fclose(C1.idinicial);
            
                C1.idinicial = fopen("ids.txt","w");
    
                fprintf(C1.idinicial,"%d", C1.id);
        
                fclose(C1.idinicial);
        
                C1.dados= fopen("dados.txt","a");
    
                printf("\n Olá! Seja bem-vindo à BONBONCHOCOLAT!\n Para iniciarmos o cadastro, serão necessárias algumas informações \n Informe seu nome completo: ");
                fflush(stdin);
                gets(C1.Nome);
        
                printf("\n Informe sua data de nascimento: ");
                fflush(stdin);
                gets(C1.DataNasc);
        
                printf("\n Informe o número do seu CPF: ");
                fflush(stdin);
                scanf("%d", &C1.CPF);
        
        
                printf("\n Digite um E-MAIL válido: ");
                fflush(stdin);
                gets(C1.Email);
                        
                C1.senhas= fopen("Senhas.txt", "a");
                        
                printf("\n Digite uma senha de 8 caracteres: ");
                fflush(stdin);
                gets(C1.Senha);
                    
                    if(strlen(C1.Senha)!=8){
                        printf("\n Sua senha não corresponde ao tamanho solicitado\n Digite uma senha de 8 caracteres: ");
                        fflush(stdin);
                        gets(C1.Senha);
                    }
                        
                        
                    printf("\n Confirme sua senha: ");
                    fflush(stdin);
                    gets(C1.ConfirmacaoSenha);
                        
                    system("cls");
                    while (strcmp(C1.Senha,C1.ConfirmacaoSenha)!=0){
                        printf("\n SENHA INVÁLIDA \n Digite novamente: ");
                        fflush(stdin);
                        gets(C1.Senha);
                        
                        printf("\n Confirme sua senha: ");
                        fflush(stdin);
                        gets(C1.ConfirmacaoSenha);
                    }
                        
                    fprintf(C1.senhas,"%s\n", C1.Senha);
                    fclose(C1.senhas);
                    
                    system("cls");
                    
                    printf("\n O código da sua conta é: %d \n Guarde-o com cuidado para acessar novamente o site", C1.id);
                    
                    system("pause");
                        
                    fprintf(C1.dados, "\n__________________________________\n| Nome Do Usuário: %s\n| Data de Nascimento:%s\n| Número de CPF: %d\n| E-MAIL: %s\n| Senha: %s", C1.Nome,C1.DataNasc,C1.CPF,C1.Email,C1.Senha);
                        
                    break;    
                    
                case 3:
                    exit(0);
                    break;    
                            
                default:
                    printf("\n ERROR");
                    exit(0);
                    break;
    } 
    
}

int produto(){
    system("cls");
        printf ("Opções de doces e a tabela de preços: ");
        printf ("\n________________________________________________________________________________________________________________\n1.Alfenim-350g por R$10,00;--------2.Ambrosia- R$3,00;----------3.Baba de moça-R$1,00;--------4.Bananada-R$0,30;\n\n5.Bananinha-R$0,25;----------------6.Beijinho-R$1,00;-----------7.Bem-casado-R$1,50;----------8.Bolinho de chuva-R$0,75;\n\n9.Bolinho de estudante-R$1,00;----10.Bolo de fubá-R$15,00;------11.Bolo de milho-R$12,00;-----12.Bolo de rolo-17,00;\n\n13.Brigadeiro-R$1,50;-------------14.Cajuada-R$5,80;------------15.Cajuzinho-R$0,70;----------16.Doce Carolina-R$2,50;\n\n17.Cartola-R$5,00;----------------18.Chuvisco doce-R$3,00;------19.Cocada-R$2,50;-------------20.Cupulate-R$1,50;\n\n21.Cural-R$3,00;------------------22.Doce de abóbora-R$3,00;----23.Doce de leite-R$2,50;------24.Doce de espécie-R$1,50;\n\n25.Doce de mocotó-R$3,50;---------26.Doce de trigo-R$3,00;------27.Figada-R$4,60;-------------28.Filhó-R$1,50;\n\n29.Flan-R$3,00;-------------------30.Furrundum-R$2,50;----------31.Goiabada-R$5,50;-----------32.Maria-mole-R$1,25;\n\n33.Mariola-R$0,50;----------------34.Marmelada-R$3,75;----------35.Mousse de limão-R$4,00;----36.Mungunzá-R$4,00;\n\n37.Nega-maluca-R$15,00;-----------38.Nego-bom-R$0,35;-----------39.Olho de sogra-R$2,50;------40.Paçoquinha-R$0,50;\n\n41.Pão doce-R$0,75;---------------42.Bom-bocado-R$3,00;---------43.Papo de anjo-R$1,50;-------44.Pé de moleque-R$0,75;\n\n45.Pixé-R$1,50;-------------------46.Quebra queixo-R$1,50;------47.Queijadinha-R$3,00;--------48.Queque-R$2,00;\n\n49.Quindim-R$3,00;----------------50.Rapadura-R$8,00;-----------51.Romeu e Julieta-R$2,50;----52.Sagu-R$3,50;\n\n53.Tareco-R$1,50;-----------------54.Umbuzada-R$4,00;-----------55.Doce surpresa-R$1,50.\n________________________________________________________________________________________________________________");

        printf ("\nINFORME O CÓDIGO DO PRODUTO QUE VOCÊ DESEJA ADQUIRIR: ");
        fflush(stdin);
        scanf ("%d", &P1.CodProduto);
    
            switch(P1.CodProduto){
                case 1:
                    P1.PrecoProduto= 10.00;
                    P1.produto=="Alfenim";
                    break;
            }
            switch(P1.CodProduto){
                case 2:
                    P1.PrecoProduto=3.00;
                    P1.produto=="Ambrosia";
                    break;
            }
            switch(P1.CodProduto){
                case 3:
                    P1.PrecoProduto= 1.00;
                    P1.produto=="Baba de Moça";
                    break;
            }
            switch (P1.CodProduto){
                case 4:
                    P1.PrecoProduto= 0.30;
                    P1.produto=="Bananada";
                    break;
            }
            switch (P1.CodProduto){
                case 5:
                    P1.PrecoProduto= 0.25;
                    P1.produto=="Bananinha";
                    break;
            }
            switch (P1.CodProduto){
                case 6:
                    P1.PrecoProduto= 1.00;
                    P1.produto=="Beijinho";
                    break;
            }
            switch (P1.CodProduto){
                case 7:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Bem-Casado";
                    break;
            }
            switch (P1.CodProduto){
                case 8:
                    P1.PrecoProduto= 0.75;
                    P1.produto=="Bolinho de Chuva";
                    break;
            }
            switch (P1.CodProduto){
                case 9:
                    P1.PrecoProduto= 1.00;
                    P1.produto=="Bolinho de Estudante";
                    break;
            }
            switch (P1.CodProduto){
                case 10:
                    P1.PrecoProduto= 15.00;
                    P1.produto=="Bolo de Fubá";
                    break;
            }
            switch (P1.CodProduto){
                case 11:
                    P1.PrecoProduto= 12.00;
                    P1.produto=="Bolo de Milho";
                    break;
            }
            switch (P1.CodProduto){
                case 12:
                    P1.PrecoProduto= 17.00;
                    P1.produto=="Bolo de Rolo";
                    break;
            }
            switch (P1.CodProduto){
                case 13:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Brigadeiro";
                    break;
            }
            switch (P1.CodProduto){
                case 14:
                    P1.PrecoProduto= 5.80;
                    P1.produto=="Cajuada";
                break;
            }
            switch (P1.CodProduto){
                case 15:
                    P1.PrecoProduto= 0.70;
                    P1.produto=="Cajuzinho";
                    break;
            }
            switch (P1.CodProduto){
                case 16:
                    P1.PrecoProduto= 2.50;
                    P1.produto=="Doce Carolina";
                    break;
            }
            switch (P1.CodProduto){
                case 17:
                    P1.PrecoProduto= 5.00;
                    P1.produto=="Cartola";
                    break;
            }
            switch (P1.CodProduto){
                case 18:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Chuvisco Doce";
                    break;
            }
            switch (P1.CodProduto){
                case 19:
                    P1.PrecoProduto= 2.50;
                    P1.produto=="Cocada";
                    break;
            }
            switch (P1.CodProduto){
                case 20:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Cupulate";
                    break;
            }
            switch (P1.CodProduto){
                case 21:
                P1.PrecoProduto= 3.00;
                P1.produto=="Coral";
                    break;
            }
            switch (P1.CodProduto){
                case 22:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Doce de Abobóra";
                    break;
            }
            switch (P1.CodProduto){
                case 23:
                    P1.PrecoProduto= 2.50;
                    P1.produto=="Doce de Leite";
                    break;
            }
            switch (P1.CodProduto){
                case 24:
                        P1.PrecoProduto= 1.50;
                        P1.produto=="Doce de Especíe";
                    break;
            }
            switch (P1.CodProduto){
                case 25:
                        P1.PrecoProduto= 3.50;
                        P1.produto=="Doce de Mocotó";
                    break;
            }
                switch (P1.CodProduto){
                case 26:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Doce de Trigo";
                        break;
            }
            switch (P1.CodProduto){
                case 27:
                    P1.PrecoProduto= 4.60;
                    P1.produto=="Figada";
                    break;
            }
            switch (P1.CodProduto){
                case 28:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Filhó";
                    break;
            }
            switch (P1.CodProduto){
                case 29:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Fan";
                    break;
            }
            switch (P1.CodProduto){
                case 30:
                    P1.PrecoProduto= 2.50;
                    P1.produto=="Furrudum";
                    break;
            }
            switch (P1.CodProduto){
                case 31:
                    P1.PrecoProduto= 5.50;
                    P1.produto=="Goiabada";
                    break;
            }
            switch (P1.CodProduto){
                case 32:
                    P1.PrecoProduto= 1.25;
                    P1.produto=="Maria-Mole";
                    break;
            }
            switch (P1.CodProduto){
                case 33:
                    P1.PrecoProduto= 0.50;
                    P1.produto=="Mariola";
                break;
            }
            switch (P1.CodProduto){
                case 34:
                    P1.PrecoProduto= 3.75;
                    P1.produto=="Marmelada";
                    break;
            }
            switch (P1.CodProduto){
                case 35:
                    P1.PrecoProduto= 4.00;
                    P1.produto=="Mousse De Limão";
                    break;
            }
            switch (P1.CodProduto){
                case 36:
                    P1.PrecoProduto= 4.00;
                    P1.produto=="Mugunzá";
                    break;
            }
            switch (P1.CodProduto){
                case 37:
                    P1.PrecoProduto= 15.00;
                    P1.produto=="Nega-Maluca";
                        break;
            }
            switch (P1.CodProduto){
                case 38:
                    P1.PrecoProduto= 0.35;
                    P1.produto=="Nego Bom";
                    break;
            }
            switch (P1.CodProduto){
                case 39:
                        P1.PrecoProduto= 2.50;
                        P1.produto=="Olho de Sogra";
                    break;
            }
                switch (P1.CodProduto){
            case 40:
                    P1.PrecoProduto= 0.50;
                    P1.produto=="Paçoquinha";
                    break;
                }
            switch (P1.CodProduto){
                case 41:
                    P1.PrecoProduto= 0.75;
                    P1.produto=="Pão Doce";
                    break;
            }
            switch (P1.CodProduto){
                case 42:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Bom-Bocado";
                    break;
            }
            switch (P1.CodProduto){
                case 43:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Papo de Anjo";
                    break;
            }
            switch (P1.CodProduto){
                case 44:
                    P1.PrecoProduto= 0.75;
                    P1.produto=="Pé de Moleque";
                    break;
            }
            switch (P1.CodProduto){
                case 45:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Pixé";
                    break;
            }
            switch (P1.CodProduto){
                case 46:
                        P1.PrecoProduto= 1.50;
                        P1.produto=="Quebra- Queixo";
                    break;
            }
            switch (P1.CodProduto){
                case 47:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Queijadinho";
                    break;
            }
            switch (P1.CodProduto){
                case 48:
                    P1.PrecoProduto= 2.00;
                    P1.produto=="Quequé";
                    break;
            }
            switch (P1.CodProduto){
                case 49:
                    P1.PrecoProduto= 3.00;
                    P1.produto=="Quindim";
                    break;
            }
            switch (P1.CodProduto){
                case 50:
                    P1.PrecoProduto= 8.00;
                    P1.produto=="Rapadura";
                    break;
            }
            switch (P1.CodProduto){
            case 51:
                    P1.PrecoProduto= 2.50;
                    P1.produto=="Romeu e Julieta";
                    break;
            }
            switch (P1.CodProduto){
                case 52:
                    P1.PrecoProduto= 3.50;
                    P1.produto=="Sagu";
                    break;
            }    
            switch (P1.CodProduto){
                case 53:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Tareco";
                    break;
            }
            switch (P1.CodProduto){
                case 54:
                    P1.PrecoProduto= 4.00;
                    P1.produto=="Umbuzada";
                    break;
            }
            switch (P1.CodProduto){
                case 55:
                    P1.PrecoProduto= 1.50;
                    P1.produto=="Doce Surpresa";
                    break;
            }
        
            printf ("\nQuantas unidades desse produto?");
            fflush(stdin);
            scanf ("%d", &P1.QuantidadeDeCadaTipo);
                 
            P1.ResultadoMult += P1.PrecoProduto * P1.QuantidadeDeCadaTipo;


            printf ("\nO valor da compra é %.1f", P1.ResultadoMult);
                
            printf ("\nVocê deseja realizar outra compra? \n1-SIM\n2-NÃO\n");
            scanf ("%d", &P1.op);
                
            C1.dados= fopen("dados.txt","a");
            fprintf(C1.dados,"\n|Compra Realizada: %s \\ Quantidade do Produto: %d \\ O valor da compra foi: %.1f ", P1.produto, P1.QuantidadeDeCadaTipo,P1.ResultadoMult);
                
            return 0;
        }

int pagamentos(){
        printf("\n Escolha uma forma de pagamento\n Cartao de credito - 1\n Boleto - 2\n Tranferencia Bancaria - 3  ");
    scanf ("%d", &P2.OpPagamento);    
    
         P2.Dadospag = fopen("guardarpagamento.txt","a"); 
    
    switch (P2.OpPagamento){
        case 1 : 
            printf ("\n Informe o nome do titular: ");
            fflush(stdin);
            gets(P2.C2.Nome);
                   fprintf(P2.Dadospag,"\n_________________________\n| nome do titular: %s",  P2.C2.Nome);
                   
            printf ("\n Informe o sobrenome do titular: ");
            fflush(stdin);
              gets(P2.C2.Sobrenome);
                  fprintf (P2.Dadospag,"\n| Sobrenome do titular: %s", P2.C2.Sobrenome);
        
              printf ("\n Informe o número do seu cartao : ");
            fflush(stdin);
               scanf("%i",P2.C2.numero);
            fprintf (P2.Dadospag,"\n| Número do cartao: %i", P2.C2.numero); 
               
            printf ("\n Informe o CPF do titular do Cartao: ");
            fflush(stdin);
            scanf("%i",&P2.C2.CPFtitular);
              fprintf (P2.Dadospag,"\n| CPF do titular: %i", P2.C2.CPFtitular);

         
             printf ("\n Informe a data de vencimento : ");
            fflush(stdin);
            gets(P2.C2.DataNasc);
          fprintf (P2.Dadospag,"\n| Data de vencimento: %i", P2.C2.DataNasc);

         
             printf ("\n Informe o código de segurança do seu cartao : ");
            fflush(stdin);
               scanf("%i",P2.C2.CodigoSeguranca);
                fprintf (P2.Dadospag,"\n| Código de segurança do cartao: %i", P2.C2.CodigoSeguranca);

               
               break;
               
          case 2 :
               printf ("\n Informe seu nome e seu sobrenome: ");
            fflush(stdin);
            gets(P2.B.NomeSobrenome);
              fprintf (P2.Dadospag,"\n______________________\n| Nome completo: %s", P2.B.NomeSobrenome);

        
            printf ("\n Informe seu CPF: ");
            fflush(stdin);
            scanf ("%i",&P2.B.CPF);
                 fprintf (P2.Dadospag,"\n| CPF = %i", P2.B.CPF);

            printf ("\n Informe seu sua rua ou avenida: ");
            fflush(stdin);
            gets(P2.B.RuaAv);
               fprintf (P2.Dadospag,"\n| Rua ou avenida: %s", P2.B.RuaAv);

        
            printf ("\n acresente um complemento: ");
            fflush(stdin);
              gets(P2.B.Complemento);
             fprintf (P2.Dadospag,"\n| Complemento: %s", P2.B.Complemento);

              
            printf ("\n Informe o numero: ");
            fflush(stdin);
            scanf("%i",&P2.B.Numero);
            fprintf (P2.Dadospag,"\n| Número: %i", P2.B.Numero);

        
            printf ("\n Informe seu bairro: ");
            fflush(stdin);
            gets(P2.B.Bairro);
                 fprintf (P2.Dadospag,"\n| Bairro: %s", P2.B.Bairro);

        
            printf ("\n Informe sua cidade: ");
            fflush(stdin);
            gets(P2.B.Cidade);
            fprintf (P2.Dadospag,"\n| Cidade: %s", P2.B.Cidade);

            printf ("\n Informe seu estado: ");
            fflush(stdin);
              gets(P2.B.Estado);
               fprintf (P2.Dadospag,"\n| Estado: %s", P2.B.Estado);

                
             break;
                
       case 3: 
               printf ("\n Informe seu nome: ");
            fflush(stdin);
            gets(P2.T.Nome);
            fprintf (P2.Dadospag,"\n_______________\n| Nome: %s ", P2.T.Nome);
         
             printf ("\n Informe o numero da sua agência bancaria: ");
            fflush(stdin);
            scanf("%i",P2.T.Agencia);
            fprintf (P2.Dadospag,"\n| Número da agência bancaria: %d", P2.T.Agencia);
        
             printf ("\n Informe o numero da  conta: ");
            fflush(stdin);
            scanf("%i",P2.T.Conta);
            fprintf (P2.Dadospag,"\n| Número da conta: %d", P2.T.Conta);
        
              break;
              
        default:
        
        printf("ERRO");
        exit(0);
        break;      
        }
        fclose(P2.Dadospag);
        printf("\n O valor total da compra é R$%.1f\n COMPRA REALIZADA COM SUCESSO! A SUA ENCOMENDA CHEGA EM ATÉ 15 DIAS, CASO O PRAZO SEJA ULTRAPASSADO, ENTRAR EM CONTATO COM [email protected].", P1.ResultadoMult);
}

int main() {
    setlocale(LC_ALL,"Portuguese");
    
    cadastros();
    
    do {
        produto();
    }while(P1.op == 1);
    
    system("cls");
    
    pagamentos();
    
    return 0;
}

  • Curtir 1
Postado

@leonardorsg       o código do   @KXSY   esta bom , e você também pode usar esse seu código  com algumas modificações :

#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <iostream>
#include <stdlib.h>
#include <locale.h>
#include <string.h>
#include <windows.h>
#define cls system("cls");
#define H GetStdHandle(STD_OUTPUT_HANDLE)
#define TAM 200
#define cont 8
using namespace std;
void gotoxy(int x, int y){
    COORD c;
    c.X = x;
    c.Y = y;
    SetConsoleCursorPosition(H,c);
}
void textcolor_2(int l, int f){SetConsoleTextAttribute(H,l+(f<<4));}
float precoprod[]={
    10  , 3,1 , 0.3 , 0.25, 1   , 1.5 , 0.75, 1   , 15  , 12  , 17  , 1.5 , 5.8 , 0.7 , 2.5 ,
    5   , 3   , 2.5 , 1.5 , 3   , 3   , 2.5 , 1.5 , 3.5 , 3   , 4.6 , 1.5 , 3   , 2.5 , 5.5 ,
    1.25, 0.5 , 3.75, 4   , 4   , 15  , 0.35, 2.5 , 0.5 , 0.75, 3   , 1.5 , 0.75, 1.5 , 1.5 ,
    3   , 2   , 3   , 8   , 2.5 , 3.5 , 1.5 , 4   , 1.5
};
char nomeprod[][30]={
    "Alfenim"       ,"Ambrosia"        ,"Baba De Moça"    ,"Bananada"     ,"Bananinha"      ,
    "Beijinho"      ,"Bem - Casado"    ,"Bolinho De Chuva","Bolinho De Estudante"           ,
    "Bolo De Fuba"  ,"Bolo De Milho"   ,"Bolo De Rolo"    ,"Brigadeiro"   ,"Cajuada"        ,
    "Cajuzinho"     ,"Doce carolina"   ,"Cartola"         ,"Chuvisco Doce","Cocada"         ,
    "Cupulate"      ,"Coral"           ,"Doce De Abobora" ,"Doce De Leite","Doce De Especie",
    "Doce De Mocoto","Doce De Trigo"   ,"Figada"          ,"Filhó"        ,"Fan"            ,
    "Furrudum"      ,"Goiabada"        ,"Maria Mole"      ,"Mariola"      ,"Marmelada"      ,
    "Mouse De Limão","Munguzá"         ,"Nega - Maluca"   ,"Nego Bom"     ,"Olho De Sogra"  ,
    "Paçoquinha"    ,"Pão Doce"        ,"Bom Bocado"      ,"Papo De Anjo" ,"Pé De Moleque"  ,
    "Pixé"          ,"Quebra - Queixo" ,"Queijadinho"     ,"Quequé"       ,"Quindin"        ,
    "Rapadura"      ,"Romeu e Julieta" ,"Sagu"            ,"Tareco"       ,"Umbuzada"       ,
    "Doce Surpreza"
};
struct Cadastro{
    int  CPF[11],opcadastro,opcase1;
    int  id,numid,acharsenha;
    char Email[TAM],Senha[8];
    char ConfirmacaoSenha[8];
    char Nome[TAM],DataNasc[TAM];
    char senhausuario[58],aux;
    char senhaverificacao[8];
    FILE *dados;
    FILE *idinicial,*senhas;
}C1;
struct Produtos{
    int CodProduto;
    int QuantidadeProdutos;
    int QuantidadeDeCadaTipo;
    int op;
    float PrecoProduto;
    float ResultadoMult;
    float ResultadoFinal;
    char produto[TAM];
}P1;
struct Cartaocredito{
    char Nome[TAM];
    char DataNasc[TAM];
    int  CodigoSeguranca;
    int  CPFtitular;
    int  numero;
    char Sobrenome[TAM];
}C2;
struct Boleto{
    char NomeSobrenome[TAM];
    char RuaAv[TAM];
    int  Numero;
    char Complemento[TAM];
    int  CEP;
    char Estado[TAM];
    char Cidade[TAM];
    char Bairro[TAM];
    int CPF;
}B;
struct Transferencia{
    char Nome[TAM];
    int  Agencia;
    int  Conta;
}T;
struct Pagamento{
    struct Cartaocredito C2;
    struct Boleto B;
    struct Transferencia T;
    int OpPagamento;
    FILE * Dadospag;
}P2;
int cadastros(){
    int aux,i;
    int linha = 0;
    printf("\n Olá! Seja bem-vindo à BONBONCHOCOLAT!\n\n");
    printf("______________________________________\n\n");
    printf(" 1- Tenho cadastro\n");
    printf(" 2- Quero me cadastrar\n");
    printf(" 3- Sair");
    printf("\n______________________________________\n");
    printf("    Escolha -> ");
    scanf("%d",&C1.opcadastro);
    cls;
    switch(C1.opcadastro){
    case 1:
        char senha[30];
        char opc;
        printf("\n Digite o código da sua conta:");
        scanf("%d",&C1.id);

        printf("senha padrão ->  qualquercoisa\n");
        C1.senhas=fopen("senhas.txt","r");
        if(C1.senhas == NULL){
            C1.senhas=fopen("senhas.txt","w");
            fprintf(C1.senhas,"%s","qualquercoisa");
        }
        fclose(C1.senhas);
        C1.senhas=fopen("senhas.txt","r");
        fscanf(C1.senhas,"%s",senha);
        fclose(C1.senhas);
        if(strcmp(senha,"qualquercoisa")!= 0){
            textcolor_2(12,15);
            printf("  A senha padrão ja foi modificada !  \n");
            textcolor_2(7,0);
        }
        printf("Quer Alterar a senha S/N ");
        fflush(stdin);
        /*scanf("%c",&opc);*/
        opc=(char)getch();
        if(toupper(opc)=='S'){
            printf("Digite Sua Nova Senha ");
            fflush(stdin);
            scanf("%s",senha);
            C1.senhas=fopen("senhas.txt","w");
            fprintf(C1.senhas,"%s",senha);
            fclose(C1.senhas);
            textcolor_2(14,9);
            printf("\n  Sua nova senha foi salva com sucesso !  \n\n");
            textcolor_2(7,0);
        }
        printf("\n Digite sua senha : ");
        scanf("%s",&C1.senhausuario);
        C1.senhas= fopen("Senhas.txt","r");
        fscanf(C1.senhas,"%s",senha);
        if(strcmp(senha,C1.senhausuario)==0){
            textcolor_2(10,12);
            printf("  %s -> senha correta !  \n",senha);
        }
        else{
            textcolor_2(14,0);
            printf("  %s -> senha Invalida !  \n",senha);
            exit(0);
        }
        textcolor_2(7,0);
        printf("\n %s", C1.senhaverificacao);
        system("pause");
        fclose(C1.senhas);
        break;
    case 2:
        int flag;
        C1.idinicial = fopen("ids.txt","r");
        fscanf(C1.idinicial,"%d", &C1.numid);
        C1.id=C1.numid+1;
        fclose(C1.idinicial);
        C1.idinicial = fopen("ids.txt","w");
        fprintf(C1.idinicial,"%d", C1.id);
        fclose(C1.idinicial);
        C1.dados= fopen("dados.txt","a");
        printf("\n Olá! Seja bem-vindo à BONBONCHOCOLAT!\n");
        printf(" Para iniciarmos o cadastro, serão necessárias algumas informações \n");
        printf(" Informe seu nome completo ----------: ");
        fflush(stdin);
        gets(C1.Nome);
        printf("\n Informe sua data de nascimento ---: ");
        fflush(stdin);
        gets(C1.DataNasc);
        printf("\n Informe o número do seu CPF ------: ");
        fflush(stdin);
        scanf("%d", &C1.CPF);
        printf("\n Digite um E-MAIL válido ----------: ");
        fflush(stdin);
        gets(C1.Email);
        C1.senhas= fopen("Senhas.txt", "a");
        do{
            printf("\n Digite uma senha de 8 caracteres -: ");
            fflush(stdin);
            gets(C1.Senha);
            if(strlen(C1.Senha) < 8)
                printf("\n Sua senha não corresponde ao tamanho solicitado");
        }while(strlen(C1.Senha) < 8);
        do{
            flag=0;
            printf("\n Confirme sua senha: ");
            fflush(stdin);
            gets(C1.ConfirmacaoSenha);
            cls;
            if(strcmp(C1.Senha,C1.ConfirmacaoSenha)!= 0){
                printf("\n SENHA INVÁLIDA \n Digite novamente: ");
                flag=1;
                printf("Quer ver sua senha S/N ");
                opc=(char)getch();
                if(toupper(opc)=='S')printf("\n sua senha -> %s\n",C1.Senha);
            }
        }while( flag );
        fprintf(C1.senhas,"%s\n", C1.Senha);
        fclose(C1.senhas);
        system("cls");
        printf("\n O código da sua conta é: %d",C1.id);
        printf(" \n Guarde-o com cuidado para acessar novamente o site");
        system("pause");
        fprintf(C1.dados, "\n______________________________________\n");
        fprintf(C1.dados,"| Nome Do Usuário -----: %s\n"  ,C1.Nome    );
        fprintf(C1.dados,"| Data de Nascimento --: %s\n"  ,C1.DataNasc);
        fprintf(C1.dados,"| Número de CPF -------: %d\n"  ,C1.CPF     );
        fprintf(C1.dados,"| E-MAIL --------------: %s\n"  ,C1.Email   );
        fprintf(C1.dados,"| Senha ---------------: %s\n\n",C1.Senha   );
        break;
    case 3:
        exit(0);
        break;
    default:
        printf("\n ERROR");
        exit(0);
        break;
    }
}
int produto(){
    system("MODE con cols=120 lines=80 ");
    system("MODE con posX=0 posY=0");
    /*/HDC hc;   mover a janela do console para a posição 0,0
    HWND consoleWindow;
    GetConsoleWindow(consoleWindow);
    GetConsoleWindow(hc);
	SetWindowPos( consoleWindow, 0, 500, 500, 0, 0, SWP_NOSIZE | SWP_NOZORDER );*/
    cls;
    textcolor_2(15,9);
    printf("   Opções de doces    tabela de preços :\n\n");
    for(int j=0;j<55;j++){
        textcolor_2(14,0);
        printf("%s ",nomeprod[j]);
        for(int f=0;f<(20-strlen(nomeprod[j]));f++){
            printf("-");
        }
        printf(">");
        gotoxy(23,j+2);
        textcolor_2(11,0);
        printf("R$");
        if(precoprod[j]<10)printf(" ");
        printf("%.2f\n",precoprod[j]);
    }
    printf("\nINFORME O CÓDIGO DO PRODUTO QUE VOCÊ DESEJA ADQUIRIR: ");
    fflush(stdin);
    scanf ("%d",&P1.CodProduto);
    P1.PrecoProduto = precoprod[P1.CodProduto];
    strcpy(P1.produto,nomeprod [P1.CodProduto]);

    printf ("\nQuantas unidades desse produto?");
    fflush(stdin);
    scanf ("%d", &P1.QuantidadeDeCadaTipo);
    P1.ResultadoMult += P1.PrecoProduto * P1.QuantidadeDeCadaTipo;
    printf ("\nO valor da compra é %.1f", P1.ResultadoMult);
    printf ("\nVocê deseja realizar outra compra? \n1-SIM\n2-NÃO\n");
    scanf ("%d", &P1.op);
    C1.dados= fopen("dados.txt","a");
    fprintf(C1.dados,"\n|Compra Realizada: %s \\ Quantidade do Produto: %d \\ O valor da compra foi: %.1f ", P1.produto, P1.QuantidadeDeCadaTipo,P1.ResultadoMult);
    return 0;

}
int pagamentos(){
    printf("\n Escolha uma forma de pagamento\n Cartao de credito - 1\n Boleto - 2\n Tranferencia Bancaria - 3  ");
    scanf ("%d", &P2.OpPagamento);
    P2.Dadospag = fopen("guardarpagamento.txt","a");
    switch (P2.OpPagamento){
    case 1 :
        printf ("\n Informe o nome do titular: ");
        fflush(stdin);
        gets(P2.C2.Nome);
        fprintf(P2.Dadospag,"\n_________________________\n| nome do titular: %s",  P2.C2.Nome);
        printf ("\n Informe o sobrenome do titular: ");
        fflush(stdin);
        gets(P2.C2.Sobrenome);
        fprintf (P2.Dadospag,"\n| Sobrenome do titular: %s", P2.C2.Sobrenome);
        printf ("\n Informe o número do seu cartao : ");
        fflush(stdin);
        scanf("%i",P2.C2.numero);
        fprintf (P2.Dadospag,"\n| Número do cartao: %i", P2.C2.numero);
        printf ("\n Informe o CPF do titular do Cartao: ");
        fflush(stdin);
        scanf("%i",&P2.C2.CPFtitular);
        fprintf (P2.Dadospag,"\n| CPF do titular: %i", P2.C2.CPFtitular);
        printf ("\n Informe a data de vencimento : ");
        fflush(stdin);
        gets(P2.C2.DataNasc);
        fprintf (P2.Dadospag,"\n| Data de vencimento: %i", P2.C2.DataNasc);
        printf ("\n Informe o código de segurança do seu cartao : ");
        fflush(stdin);
        scanf("%i",P2.C2.CodigoSeguranca);
        fprintf (P2.Dadospag,"\n| Código de segurança do cartao: %i", P2.C2.CodigoSeguranca);
        break;
    case 2 :
        printf ("\n Informe seu nome e seu sobrenome: ");
        fflush(stdin);
        gets(P2.B.NomeSobrenome);
        fprintf (P2.Dadospag,"\n______________________\n| Nome completo: %s", P2.B.NomeSobrenome);
        printf ("\n Informe seu CPF: ");
        fflush(stdin);
        scanf ("%i",&P2.B.CPF);
        fprintf (P2.Dadospag,"\n| CPF = %i", P2.B.CPF);
        printf ("\n Informe seu sua rua ou avenida: ");
        fflush(stdin);
        gets(P2.B.RuaAv);
        fprintf (P2.Dadospag,"\n| Rua ou avenida: %s", P2.B.RuaAv);
        printf ("\n acresente um complemento: ");
        fflush(stdin);
        gets(P2.B.Complemento);
        fprintf (P2.Dadospag,"\n| Complemento: %s", P2.B.Complemento);
        printf ("\n Informe o numero: ");
        fflush(stdin);
        scanf("%i",&P2.B.Numero);
        fprintf (P2.Dadospag,"\n| Número: %i", P2.B.Numero);
        printf ("\n Informe seu bairro: ");
        fflush(stdin);
        gets(P2.B.Bairro);
        fprintf (P2.Dadospag,"\n| Bairro: %s", P2.B.Bairro);
        printf ("\n Informe sua cidade: ");
        fflush(stdin);
        gets(P2.B.Cidade);
        fprintf (P2.Dadospag,"\n| Cidade: %s", P2.B.Cidade);
        printf ("\n Informe seu estado: ");
        fflush(stdin);
        gets(P2.B.Estado);
        fprintf (P2.Dadospag,"\n| Estado: %s", P2.B.Estado);
        break;
    case 3:
        printf ("\n Informe seu nome: ");
        fflush(stdin);
        gets(P2.T.Nome);
        fprintf (P2.Dadospag,"\n_______________\n| Nome: %s ", P2.T.Nome);
        printf ("\n Informe o numero da sua agência bancaria: ");
        fflush(stdin);
        scanf("%i",P2.T.Agencia);
        fprintf (P2.Dadospag,"\n| Número da agência bancaria: %d", P2.T.Agencia);
        printf ("\n Informe o numero da  conta: ");
        fflush(stdin);
        scanf("%i",P2.T.Conta);
        fprintf (P2.Dadospag,"\n| Número da conta: %d", P2.T.Conta);
        break;
    default:
        printf("ERRO");
        exit(0);
        break;
    }
    fclose(P2.Dadospag);
    printf("\n O valor total da compra é R$%.1f\n COMPRA REALIZADA COM SUCESSO! A SUA ENCOMENDA CHEGA EM ATÉ 15 DIAS, CASO O PRAZO SEJA ULTRAPASSADO, ENTRAR EM CONTATO COM [email protected].", P1.ResultadoMult);
}
int main(){
    setlocale(LC_ALL,"Portuguese");
    cadastros();
    do{
        produto();
    }while(P1.op == 1);
    cls;
    pagamentos();
    return 0;
}

 

  • Curtir 1

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!