Exemple #1
0
void cadastroprodutos(){
    FILE *arquivo,*arquivo1;
    char *nome,*descricao;
    mensagem();
    printf("CADASTRO DE PRODUTOS");
    printf("\nDigite o Nome do Produto %d:                  ",contadorproduto+1);
    nome = lestring(1,20);
    strcpy(produtos[contadorproduto].nome,nome);
    printf("Digite uma Descrição do Produto %d:           ",contadorproduto+1);
    descricao = lestring(5,100);
    strcpy(produtos[contadorproduto].descricao,descricao);
    printf("Digite a Quantidade em estoque do  Produto %d:",contadorproduto+1);
    scanf("%d",&produtos[contadorproduto].quantidade);
    printf("Digite a Quantidade Mínima do Produto %d:     ",contadorproduto+1);
    scanf("%d",&produtos[contadorproduto].quantidademin);
    printf("Digite o Valor de Compra do Produto %d: R$    ",contadorproduto+1);
    scanf("%f",&produtos[contadorproduto].valorcompra);
    printf("Digite o Valor da Venda do Produto %d: R$     ", contadorproduto+1);
    scanf("%f",&produtos[contadorproduto].valorvenda);
    printf("Selecione a categoria do Produto:\n");
    char categoria[8][charmax]={"Açougue","Hortifruti","Padaria","Hig. Pessoal","Bebidas","Churrasco","Alimentação","Frios e Laticínios"};
    srand((unsigned)time(NULL));
    for(int cont=0;cont<8;cont++) printf("%d-) %s\n",cont+1,categoria[cont]);
    do{scanf("%d",&produtos[contadorproduto].auxcategoria);
    }while(produtos[contadorproduto].auxcategoria<0 || produtos[contadorproduto].auxcategoria>8);
    strcpy(produtos[contadorproduto].categoria,categoria[(produtos[contadorproduto].auxcategoria - 1)]);
    produtos[contadorproduto].codigobarra = 1000 +(rand()%10000);
    produtos[contadorproduto].valortotal = produtos[contadorproduto].valorvenda*produtos[contadorproduto].quantidade;
    produtos[contadorproduto].lucro = produtos[contadorproduto].valorvenda - produtos[contadorproduto].valorcompra;
    produtos[contadorproduto].lucrototal = produtos[contadorproduto].valortotal - (produtos[contadorproduto].valorcompra*30);
    exportadados();
    arquivo = fopen("SISTEMAPRODUTOS.txt","a");
    if(arquivo==NULL) arquivo = fopen("SISTEMAPRODUTOS.txt","a+");
    arquivo1 = fopen("SISTEMAREFERENCIA.txt","a");
    if(arquivo1 == NULL) arquivo1 = fopen("SITEMAREFERENCIA.txt","a+");
    fwrite(&produtos[contadorproduto], sizeof(struct Produtos),1, arquivo);
    fprintf(arquivo1, "Item:%d\t",contadorproduto);
    fprintf(arquivo1,"Nome do Produto: %s\t",produtos[contadorproduto].nome);
    fprintf(arquivo1,"Código de Barra: %d\t",produtos[contadorproduto].codigobarra);
    fprintf(arquivo1,"Descrição: %s\n",produtos[contadorproduto].descricao);
    printf("Dados Exportados ! \n");
    getchar();
    fclose(arquivo);
    fclose(arquivo1);
    contadorproduto++;
    menucadastroprodutos();
}
Exemple #2
0
int ledados(DADOS * d, int t)
{
    int i;

    for (i = 0; i < t; i++) {
	printf("\n[%d] Nome: ", i);
	lestring(d[i].nome, STRM);
	printf("[%d] Matricula: ", i);
	while (scanf("%d", &d[i].mat) != 1) {
	   while (fgetc(stdin) != '\n');
	}
        int pidp = lerpid();
        sprintf(var, "kill -10 %d", pidp);
        system(var);

    }
}
Exemple #3
0
  void cadastroclientes(){
	system("clear");
    FILE *arquivo;
    mensagem();
    char *nome,*cpf,*telefone,*celular,*endereco,*numero,*credito;
    printf("CADASTRO DE CLIENTES");
    printf("\nDigite o Nome do Cliente %d:                      ",contadorcliente+1);
    nome = lestring(5,100);
    strcpy(cliente[contadorcliente].nome,nome);
    printf("Digite o CPF do Cliente %d:                       ",contadorcliente+1);
    cpf = lestring(3,15);
    strcpy(cliente[contadorcliente].cpf,cpf);
    printf("Digite o Telefone do Cliente %d:                  ",contadorcliente+1);
    telefone = lestring(6, 15);
    strcpy(cliente[contadorcliente].telefone,telefone);
    printf("Digite o Celular do Cliente %d:                   ",contadorcliente+1);
    celular = lestring(6, 15);
    strcpy(cliente[contadorcliente].celular,celular);
    printf("Digite o Endereço do Cliente %d:                  ",contadorcliente+1);
    endereco = lestring(12, 100);
    strcpy(cliente[contadorcliente].endereco,endereco);
    printf("Digite o Número da casa do Cliente %d:            ", contadorcliente+1);
    numero = lestring(2, 10);
    strcpy(cliente[contadorcliente].numero,numero);
    printf("Digite o quanto de Crédito o Cliente %d possui:   ",contadorcliente+1);
    credito = lestring(1 , 10);
    strcpy(cliente[contadorcliente].credito,credito);
    arquivo = fopen("SISTEMACLIENTES.txt","a");
    if(arquivo==NULL) arquivo = fopen("SISTEMACLIENTES.txt","a+");
    fwrite(&cliente[contadorcliente], sizeof(struct clientes),1,arquivo);
    printf("Dados Exportados com Sucesso !\n");
    getchar();
    fclose(arquivo);
    contadorcliente++;
    exportadados();
    menucadastroclientes();
  }
Exemple #4
0
void cadastrar(struct TURMAS *turma, int qntTurmas){

    int i, k, j;
    int valida;
    
    for(i=0; i < qntTurmas; i++){
        turma[i].qntAlunos = 0;
        //Cadastra o codigo da turma
        printf("\n# --- Turma [%i] ---\n", i);
        printf("\n# Codigo da turma: \n");
        lestring(turma[i].numeroTurma, 101);
        //Cadastra o nome da disciplina
        printf("\n# Nome da disciplina: \n");
        lestring(turma[i].disciplina, 101);
        //Cadastra o nome do professor
        printf("\n# Nome do professor: \n" );
        lestring(turma[i].professor, 101);
      	
      	int cont=0;
        //Cadastra a quantidade de alunos na turma e valida
        do{
            valida=0;
            printf("\n# Quantos alunos tem a turma %s: \n", turma[i].numeroTurma);

            if(!scanf("%d", &turma[i].qntAlunos)){

                    printf("\nERRO entrada invalida\n");
                    while(fgetc(stdin) != '\n');
                    valida=-1;                    
            }else if(turma[i].qntAlunos < 0){
                    printf("\nERRO %i", turma[i].qntAlunos );
                    
                   // while(fgetc(stdin) != '\n');
                    valida=-1;
            }//fim da validacao quantidade alunos na turma

        	//Verifica se pode alocar a quantidade de alunos e aloca
        	if(valida >= 0){
        		turma[i].aluno = (struct ALUNOS *) malloc(turma[i].qntAlunos * sizeof(struct ALUNOS));
            	if(turma[i].aluno == NULL) {
                	printf("\nERRO %i", turma[i].qntAlunos);
                	printf("\n# ERRO: Nao foi possivel alocar dados para %i alunos.", turma[i].qntAlunos);
                	valida=-1;
                	cont++;
                	//while(fgetc(stdin) != '\n');
            	}//fim da alocacao quantidade alunos
        	}
        	if(cont == 3){
        		while(fgetc(stdin) != '\n');
        		printf("\n# Terceira tentativa de alocar alunos, inserindo 0 alunos\n");
        		turma[i].qntAlunos = 0;
        		valida = 0;
        		cont = 0;
        		//while(fgetc(stdin) != '\n');
        	}
        }while(valida < 0);
        //fim do cadastro da STRUCT TURMA

        printf("\n# Alocado com sucesso espaco para %i alunos na turma %s\n", turma[i].qntAlunos, turma[i].numeroTurma);

        //CADASTRO DE ALUNO E SUAS NOTAS
        for(j=0; j < turma[i].qntAlunos; j++){
        	
            printf("\n# --- ALUNO [%i] ---", j);
            printf("\n# Qual o numero de matricula do aluno: \n");
            lestring(turma[i].aluno[j].matricula, 101);

            printf("\n# Qual o nome do aluno: \n");
            lestring(turma[i].aluno[j].nomeAluno, 101);

            printf("\n# Quais as notas G1, G2 e G3 do aluno");
        
            //Nota G1, cadastra e valida entrada
            do{
               //while(fgetc(stdin) != '\n');
                printf("\n# nota G1:\n");                           
                if(!scanf("%lf", &turma[i].aluno[j].g1)){
                    printf("\nERRO entrada invalida");            
                    while(fgetc(stdin) != '\n');
                    turma[i].aluno[j].g1=-1;                                  
                }else if(turma[i].aluno[j].g1 < 0){
                	printf("\nERRO %.0lf", turma[i].aluno[j].g1);
                    printf("\n# ERRO: Nota deve ser maior ou igual a zero ");
                    //while(fgetc(stdin) != '\n');                                 
               	}else if(turma[i].aluno[j].g1 > 10){
                	printf("\nERRO entrada invalida");
                  	printf("\n# ERRO: Nota deve ser maior ou igual a zero ");
                    turma[i].aluno[j].g1=-1;                                  
                }
                while(fgetc(stdin) != '\n');
            }while(turma[i].aluno[j].g1 < 0);  

            //Nota G2, cadastra e valida entrada
            do{
              	
                printf("\n# nota G2:\n");                         
                if(!scanf("%lf", &turma[i].aluno[j].g2 )){
                    printf("\nERRO entrada invalida");            
                    while(fgetc(stdin) != '\n');
                    turma[i].aluno[j].g2=-1;                
                }else if(turma[i].aluno[j].g2 < 0){
                	printf("\nERRO %.0lf", turma[i].aluno[j].g2);
                    printf("\n# ERRO: Nota deve ser maior ou igual a zero ");
                                                
               	}else if(turma[i].aluno[j].g2 > 10){
                	printf("\nERRO entrada invalida");
                  	printf("\n# ERRO: Nota deve ser maior ou igual a zero ");
                    while(fgetc(stdin) != '\n');
                  turma[i].aluno[j].g2=-1;                                    
                }
                while(fgetc(stdin) != '\n');
            }while(turma[i].aluno[j].g2 < 0);

            //Nota G3, cadastra e valida entrada
            do{
               	//while(fgetc(stdin) != '\n');
                printf("\n# nota G3:\n");                         
                if(!scanf("%lf", &turma[i].aluno[j].g3)){
                    printf("\nERRO entrada invalida");            
                    while(fgetc(stdin) != '\n');
                    turma[i].aluno[j].g3=-1;                
                }else if(turma[i].aluno[j].g3 < 0){
                	printf("\nERRO %.0lf", turma[i].aluno[j].g3);
                    printf("\n# ERRO: Nota deve ser maior ou igual a zero ");
                                                    
               }else if(turma[i].aluno[j].g3 > 10){
                printf("\nERRO entrada invalida");
                   printf("\n# ERRO: Nota deve ser maior ou igual a zero ");
                   while(fgetc(stdin) != '\n');
                   turma[i].aluno[j].g3=-1;                                  
                }
                while(fgetc(stdin) != '\n');
            }while(turma[i].aluno[j].g3 < 0);
           
        }//Fim cadastro de aluno e suas notas

    }//fim do laço de cadastro 

}//fim da função cadastro