Ir para conteúdo
Fórum Script Brasil

darkripper

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Posts postados por darkripper

  1. Bom dia, fiz um cadastro de alunos de uma academia como trabalho da facul. Também fiz no DevC++. Estou com problemas com a minha função cadastrar. Ela funcionava normalmente mas fiz algumas alterações ai ela parou de funcionar e depois mesmo restaurando ela não voltou.

    Posso estar deixando passar alguma coisa muito óbvia. deem uma olhada na função.

    Cadastrar.h

    #include <cstdlib>

    #include <iostream>

    #include <conio.h>

    #include <stdlib.h>

    #include <stdio.h>

    #include <cstring>

    #include <string>

    struct Cadastrar1 {

    //Cadastro

    int x;

    char nome[1000];

    char cpf[1000];

    char endereco[1000];

    char email[1000];

    char telefone[1000];

    int dia;

    int mes;

    int ano;

    //Cadastro

    };

    FILE * fp;

    struct Cadastrar1 C;

    int cadastrar(){

    int confirmaCadastro;

    COMECACADASTRO: system("CLS");

    int escolha;

    fp = fopen("banco.txt", "w");

    if(fp == NULL){

    printf("\nErro com conexão com o banco\n");

    printf("Informe o administrador do sistema\n");

    system("PAUSE");

    return EXIT_SUCCESS;

    }

    C.x++;

    printf("\nInsira o nome\n");

    fflush(stdin);

    gets(C.nome);

    printf("\nInsira o CPF\n");

    fflush(stdin);

    gets(C.cpf);

    printf("\nInsira o e-mail\n");

    fflush(stdin);

    gets(C.email);

    printf("\nInsira o endereco\n");

    fflush(stdin);

    gets(C.endereco);

    printf("\nInsira o telefone\n");

    fflush(stdin);

    gets(C.telefone);

    REFAZDIA: printf("\nInsira o dia da data de nascimento\n");

    fflush(stdin);

    scanf("%d", &C.dia);

    if(C.dia < 1 || C.dia > 31){

    printf("\nOpcao de dia invalida\n");

    goto REFAZDIA;

    }

    else{

    REFAZMES: printf("\nInsira o mes da data de nascimento\n");

    fflush(stdin);

    scanf("%d", &C.mes);

    if(C.mes < 1 || C.mes > 12){

    printf("\nOpcao de mes invalida\n");

    goto REFAZMES;

    }

    else{

    if(C.dia == 31 && C.dia != 1){

    if(C.dia == 31 && C.dia != 3){

    if(C.dia == 31 && C.dia != 5){

    if(C.dia == 31 && C.dia != 7){

    if(C.dia == 31 && C.dia != 8){

    if(C.dia == 31 && C.dia != 10){

    if(C.dia == 31 != C.dia != 12){

    printf("\nData invalida, este mes não contem 31 dias\n");

    goto REFAZDIA;

    }

    }

    }

    }

    }

    }

    }

    if(C.mes == 2 && C.dia > 28){

    printf("\nO mes de fevereiro não contem dias acima de 28\n");

    goto REFAZDIA;

    }

    }

    REFAZANO: printf("\nInsira o ano da data de nascimento\n");

    fflush(stdin);

    scanf("%d", C.ano);

    if(C.ano < 1900 || C.ano > 2010){

    printf("\nAno invalido\n");

    goto REFAZANO;

    }

    }

    fwrite(&C, sizeof©, 1, fp);

    system("CLS");

    printf("\nConfirmacao de dados\n");

    VOLTACONFIRMA:

    printf("Nome ............ : %s\n", C.nome);

    printf("CPF ............. : %s\n", C.cpf);

    printf("E-mail .......... : %s\n", C.email);

    printf("Endereco ........ : %s\n", C.endereco);

    printf("Telefone ........ : %s\n", C.telefone);

    printf("Data de nascimento: %d/%d/%d\n\n\n", C.dia, C.mes, C.ano);

    printf("\nConfimacao de cadastro\n");

    printf("\n1 - Confirmar cadastro \n2 - Ajustar Nome \n3 - Ajustar CPF \n4 - Ajustar E-mail \n5 - Ajustar Endereco \n6 - Ajustar Telefone \n7 - Ajutar Data de nascimento \n8 - Refazer cadastro\n\n");

    scanf("%i", &confirmaCadastro);

    switch(confirmaCadastro){

    case 1: system("CLS");

    printf("\nCadastro confirmado com Sucesso\n");

    break;

    case 2: system("CLS");

    printf("\nInsira o nome novamente\n");

    gets(C.nome);

    goto VOLTACONFIRMA;

    break;

    case 3: system("CLS");

    printf("\nInsira o CPF novamente\n");

    gets(C.cpf);

    goto VOLTACONFIRMA;

    break;

    case 4: system("CLS");

    printf("\nInsira o E-mail novamente\n");

    gets(C.email);

    goto VOLTACONFIRMA;

    break;

    case 5: system("CLS");

    printf("\nInsira o endereco novamente\n");

    gets(C.endereco);

    goto VOLTACONFIRMA;

    break;

    case 6: system("CLS");

    printf("\nInsira o telefone novamente\n");

    gets(C.telefone);

    goto VOLTACONFIRMA;

    break;

    case 7: system("CLS");

    REFAZREFAZDIA: printf("\nInsira o dia da data de nascimento\n");

    fflush(stdin);

    scanf("%d", &C.dia);

    if(C.dia < 1 || C.dia > 31){

    printf("\nOpcao de dia invalida\n");

    goto REFAZREFAZDIA;

    }

    else{

    REFAZREFAZMES: printf("\nInsira o mes da data de nascimento\n");

    fflush(stdin);

    scanf("%d", &C.mes);

    if(C.mes < 1 || C.mes > 12){

    printf("\nOpcao de mes invalida\n");

    goto REFAZREFAZMES;

    }

    else{

    if(C.dia == 31 && C.dia != 1){

    if(C.dia == 31 && C.dia != 3){

    if(C.dia == 31 && C.dia != 5){

    if(C.dia == 31 && C.dia != 7){

    if(C.dia == 31 && C.dia != 8){

    if(C.dia == 31 && C.dia != 10){

    if(C.dia == 31 != C.dia != 12){

    printf("\nData invalida, este mes não contem 31 dias\n");

    goto REFAZREFAZDIA;

    }

    }

    }

    }

    }

    }

    }

    if(C.mes == 2 && C.dia > 28){

    printf("\nO mes de fevereiro não contem dias acima de 28\n");

    goto REFAZREFAZDIA;

    }

    }

    REFAZREFAZANO: printf("\nInsira o ano da data de nascimento\n");

    fflush(stdin);

    scanf("%d", C.ano);

    if(C.ano < 1900 || C.ano > 2010){

    printf("\nAno invalido\n");

    goto REFAZREFAZANO;

    }

    break;

    case 8: system("CLS");

    goto COMECACADASTRO;

    break;

    }

    }

    fwrite(&C, sizeof©, 1, fp);

    }

    P.S. Peço desculpas antecipadas porque tentei incluir um CODEBOX várias vezes e não consegui. Espero que não fique muito ruim a visualização!

×
×
  • Criar Novo...