Ir para conteúdo
Fórum Script Brasil
  • 0

Exercicio de sistema de vendas de passagem


Jootacarvalho

Pergunta

Estou com duvida nessa parte.

A tela de relatório de vendas por vendedor deve mostrar a quantidade e o valor total das vendas de cada vendedor, nesse caso o case 5 do menu do administrador.

 

Quem puder ajudar ficarei grato.

 

Já tentei de varias formas e não conseguir.

 

 

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define SIZE 200
#include <conio.h>
#include <time.h>

void inserir(void);
void mostrar(void);
int i;
struct registro
{
          char origem[30];
          char destino[30];
          char poltronas[30];
          char valor[5];
          char hora[10];
};

struct regv
{
          char nome[30];
          char rg[30];
          char datanasc[30];
          char login[20];
          char senha[7];
};
     

main(){
	char usuariod [10];
	char senhad [10];
	int hora;
    int menu1=0;
    int menu2=0;
    int menu3=0;
    int senha;
    char nome [SIZE][50];
    int nasc [SIZE];
    int RG [SIZE];
    int op; 
    char usuario [SIZE][20];
    int senhacad[SIZE];
    int poltrona1[48];
    int poltrona2[48];
    int gratuidade1 = 0;
    int gratuidade2 = 0;
    int bus = 0;
    int bus1 = 0;
    int bus1l = 0;
    int tot1= 0;
    int inte1 = 0 ;
    int pas = 0 ;
    int bus2 = 0;
    int bus2l = 0;
    int tot2 = 0;
    int grts2 = 0;
    int inte2 = 0;
    int assent1 = 0;
    int assent2 = 0;
    int grts1 = 0;
         
		 struct tm *DataAtual; 
         time_t Segundos;
         time(&Segundos);
         DataAtual = localtime(&Segundos); 
 
  while (menu1!=6){
        printf("\n        VIAGENS S.A");
        printf("\nSatisfacao do Cliente e a nossa motivacao!");
        printf("\n");
        printf("\n- - MENU - -");
        printf("\n1-Administrador");
        printf("\n2-Vendendor");
        printf("\n6-Sair");
        printf("\n");
        printf("\nopcao: ");
        scanf("%d", &menu1);
        system("cls");
        switch (menu1){
            case 1:
               printf("\nSeja bem vindo, Administrador!");
               printf("\nEntre com a senha:");
scanf("%d",&senha);
printf("\nVerificando...\n");
if(senha==1234) {

printf("Senha correta! Bem vindo.\n\n");
 while (menu2!=6){
  printf("\n\nESCOLHA UMA OPÇAO\n\n");
  printf("\n1-Cadastro de vendedores");
  printf("\n2-Cadastro de rotas");
  printf("\n3-Consultar passagens");
  printf("\n4-Venda de passagens");
  printf("\n5-Relatorio de venda por vendedor");
  printf("\n6-Sair");
  printf("\n Opcao");
  scanf("%d", &menu2);
  switch(menu2){
   case 1:
   	int num;
     struct regv vend[10];
              printf("\t\t\t\tCADASTRO DE VENDEDORES\n");
              printf("1-Para adicionar vendedor\n");
              printf("2-Para ver lista de vendedores\n");
              printf("0-  Sair\n");
              scanf("%d",&num);
              
              switch(num){
              case 1:
              	   for(i=0; i<3; i++)
                 {
                 fflush(stdin);
                 printf("\n\n\nDigite o nome: ");
                 gets(vend[i].nome);
                 fflush(stdin);
                 printf("Digite o RG: ");
                 gets(vend[i].rg);
                 fflush(stdin);
                 printf("Digite a data de nascimento:");
                 gets(vend[i].datanasc);
                 fflush(stdin);
                 printf("Digite o login de acesso:");
                 gets(vend[i].login);
                 fflush(stdin);
                 printf("Digite a senha de acesso:");
                 gets(vend[i].senha);
                 fflush(stdin);
                 }
              break;
              case 2:
              	 int i;
              	   for(i=0; i<3; i++)
          {
          printf("\n Nome do vendedor:  %s",vend[i].nome);
          printf("\n RG: %s",vend[i].rg);
          printf("\n Data de nascimento: %s",vend[i].datanasc);
          printf("\n Login: %s",vend[i].login);
          printf("\n Senha: %s",vend[i].senha);
          }
          break;
              case 0: exit(0);
              default: puts("TENTE NOVAMENTE");
               break;
              }
          

getche();

 break;
 case 2:
     struct registro vetor[10];

for(i=0; i<3; i++)
                 {
                 fflush(stdin);
                 printf("\n\n\nDigite o local de origem: ");
                 gets(vetor[i].origem);
                 fflush(stdin);
                 printf("Digite o destino: ");
                 gets(vetor[i].destino);
                 fflush(stdin);
                 printf("Digite o numero de poltronas:");
                 gets(vetor[i].poltronas);
                 fflush(stdin);
                 printf("Digite o valor da passagem:");
                 gets(vetor[i].valor);
                 fflush(stdin);
                 }
                 system("cls");
getche();


  break;
  case 3:
          for(i=0; i<3; i++)
          {
          printf("\n       SAIDA           DESTINO     VALOR      HORA DE SAIDA   ");           
          printf("\n%d        %s             %s           R$ %s        08:00 ~ 22:00",i,vetor[i].origem,vetor[i].destino,vetor[i].valor);                
          printf("\n");
          printf("\n");
          }
          break;
       
   case 4:
   	 for(i=0; i<3; i++)
          {
	            printf("\nVENDA DE PASSAGEM");
                printf("\n");
                printf("\n       SAIDA           DESTINO     VALOR      HORA DE SAIDA   ");           
                printf("\n%d        %s             %s           R$ %s        08:00 ~ 22:00",i,vetor[i].origem,vetor[i].destino,vetor[i].valor);          
                printf("\n");
                printf("\n");
            }
            printf("Digite a hora que deseja a passagem: 0800, 1400, 1800 e 2200.");
            scanf("%d",&hora);
             printf("\nDigite o Codigo do Onibus: ");
                scanf("%d", &bus);
                switch(bus){
                    case 0:
                        bus1++;
                        printf("\nOnibus 0 - %s para %s",vetor[0].origem,vetor[0].destino);
                        printf("\nValor: R$%s",vetor[0].valor);                  
                        printf("\nAssento: ");
                        scanf("%d", &assent1);
                        if (bus1>48) {
                        	printf("\nNao ha mais vagas para este onibus.");
                        	break;
						}
                        while (assent1>48) {
                            printf("\nEste Onibus possui apenas 48 assentos, por favor, digite um assento valido\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent1);
                            system ("pause");
                        }
 
                        while (poltrona1[assent1] == 1) {
                            printf("\nEste assento ja esta ocupado\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent1);
                            system ("pause");
                        }
 
                        poltrona1[assent1] = 1;
 
                        printf("\n");
                        printf("\n1 - Passagem Inteira");
                        if(gratuidade1 < 2){
                            printf("\n2 - Passagem GRATUITA");
                        }
                        else {
                        	printf("\n2 - Passagem GRATUITA [LIMITE EXCEDIDO]");
						}
                        printf("\n");
                        printf("\nDigite o Tipo de Passagem: ");
                        scanf("%d", &pas);
                        if(gratuidade1 >= 2){
                        	printf("\nLimite de gratuidades excedido.");
                        	break;
						}
                        switch(pas)
                        {
                            case 1:
                                inte1++;
                                printf("\n___________________________________________________________");
                                printf("\n|           Onibus 0 - VIAGENS S.A                        |");
                                printf("\n|Embarque: %s               | Desembarque: %s             |",vetor[0].origem,vetor[0].destino);
                                printf("\n|Data: %02d/%02d/%04d | Hora: %02d:%02d:%02d              |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: R$%s            Hora de Saida: %d                 |",vetor[0].valor,hora);
                                printf("\n|Tipo de Passagem: INTEIRA                                |");
                                printf("\n|Assento: %d                                              |", assent1);
                                printf("\n-----------------------------------------------------------");
                                printf("\n");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                break;
                            case 2:
                                grts1++; 
                                printf("\n___________________________________________________________");
                                printf("\n|           Onibus 0 - VIAGENS S.A                        |");
                                printf("\n|Embarque: %s          | Desembarque: %s                  |",vetor[0].origem,vetor[0].destino);
                                printf("\n|Data: %02d/%02d/%04d  | Hora: %02d:%02d:%02d             |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: GRATIS          Hora de Saida: %d                 |",hora);
                                printf("\n|Tipo de Passagem: GRATUIDADE IDOSO                       |");
                                printf("\n|Assento: %d                                               |", assent1);
                                printf("\n-----------------------------------------------------------");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                gratuidade1 ++;
                                break;
                        }
                        break;
                    case 1:
                        bus2++;
                        printf("\nOnibus 1 - %s para %s",vetor[1].origem,vetor[1].destino);
                        printf("\nValor: R$%s",vetor[1].valor);                  
                        printf("\nAssento: ");
                        scanf("%d", &assent2);
                        if (bus2>48) {
                        	printf("\nNao ha mais vagas para este onibus.");
                        	break;
                        }
                        while (assent2>48) {
                            printf("\nEste Onibus possui apenas 48 assentos, por favor, digite um assento valido\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent2);
                            system ("pause");
                        }
 
                        while (poltrona2[assent2] == 1) {
                            printf("\nEste assento ja esta ocupado\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent2);
                            system ("pause");
                        }
 
                        poltrona2[assent2] = 1;
 
                        printf("\n");
                        printf("\n1 - Passagem Inteira");
                        if(gratuidade2 < 2){
                            printf("\n3 - Passagem GRATUITA");
                        }
                        else {
                        	printf("\n3 - Passagem GRATUITA [LIMITE EXCEDIDO]");
						}
                        printf("\n");
                        printf("\nDigite o Tipo de Passagem: ");
                        scanf("%d", &pas);
                        if(gratuidade2 >= 2){
                        	printf("\nLimite de gratuidades excedido.");
                        	break;
						}
                        switch(pas)
                        {
                            case 1:
                                inte2++;
                                printf("\n______________________________________________________________");
                                printf("\n|           Onibus 2 - VIAGENS S.A                           |");
                                printf("\n|Embarque: %s         | Desembarque: %s                      |",vetor[1].origem,vetor[1].destino);
                                printf("\n|Data: %02d/%02d/%04d | Hora: %02d:%02d:%02d                           |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: R$%s           Hora de Saida: %d                     |",vetor[1].valor, hora);
                                printf("\n|Tipo de Passagem: INTEIRA                                   |");
                                printf("\n|Assento: %d                                                  |", assent2);
                                printf("\n--------------------------------------------------------------");
                                printf("\n");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                break;
                            case 2:
                                grts2++; 
                                printf("\n______________________________________________________________");
                                printf("\n|           Onibus 2 - VIAGENS S.A                           |",vetor[0].origem,vetor[0].destino);
                                printf("\n|Embarque: %s      | Desembarque: %s                         |");
                                printf("\n|Data: %02d/%02d/%04d | Hora: %02d:%02d:%02d                           |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: GRATIS         Hora de Saida: %d                     |",hora);
                                printf("\n|Tipo de Passagem: GRATUIDADE IDOSO                          |");
                                printf("\n|Assento: %d                                                  |", assent2);
                                printf("\n--------------------------------------------------------------");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                gratuidade2 ++;
                                break;
                        }
                             
                } 
                printf("\n");
            break;
}
 }

}
else
{
printf("Senha incorreta! Tente novamente. \n\n");

}

break;
case 2:
	struct regv vend[10];
	printf("\nDigite o login: ");
    scanf("%s",usuariod);
    printf("\nDigite sua senha: ");
    scanf("%s",senhad);
	 for (i=0;i<3;i++){
	
    if((strcmp(usuariod,vend[i].login)==0) and (strcmp(senhad,vend[i].senha)==0)){
       printf("\n\nESCOLHA UMA OPÇAO\n\n");
       printf("\n1-Consultar passagens");
       printf("\n2-Venda de passagens");
       printf("\n3-Sair");
       printf("\n Opcao");
       scanf("%d", &menu3);
       switch(menu3){
       	case 1:
       		struct registro vetor[10];
       		for(i=0; i<3; i++)
          {
          printf("\n       SAIDA           DESTINO     VALOR      HORA DE SAIDA   ");           
          printf("\n%d        %s             %s           R$ %s        08:00 ~ 22:00",i,vetor[i].origem,vetor[i].destino,vetor[i].valor);                
          printf("\n");
          printf("\n");
          }
	   
       break;
       case 2:
       	for(i=0; i<3; i++)
          {
	            printf("\nVENDA DE PASSAGEM");
                printf("\n");
                printf("\n       SAIDA           DESTINO     VALOR      HORA DE SAIDA   ");           
                printf("\n%d        %s             %s           R$ %s        08:00 ~ 22:00",i,vetor[i].origem,vetor[i].destino,vetor[i].valor);          
                printf("\n");
                printf("\n");
            }
            printf("Digite a hora que deseja a passagem: 0800, 1400, 1800 e 2200.");
            scanf("%d",&hora);
             printf("\nDigite o Codigo do Onibus: ");
                scanf("%d", &bus);
                switch(bus){
                    case 0:
                        bus1++;
                        printf("\nOnibus 0 - %s para %s",vetor[0].origem,vetor[0].destino);
                        printf("\nValor: R$%s",vetor[0].valor);                  
                        printf("\nAssento: ");
                        scanf("%d", &assent1);
                        if (bus1>48) {
                        	printf("\nNao ha mais vagas para este onibus.");
                        	break;
						}
                        while (assent1>48) {
                            printf("\nEste Onibus possui apenas 48 assentos, por favor, digite um assento valido\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent1);
                            system ("pause");
                        }
 
                        while (poltrona1[assent1] == 1) {
                            printf("\nEste assento ja esta ocupado\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent1);
                            system ("pause");
                        }
 
                        poltrona1[assent1] = 1;
 
                        printf("\n");
                        printf("\n1 - Passagem Inteira");
                        if(gratuidade1 < 2){
                            printf("\n2 - Passagem GRATUITA");
                        }
                        else {
                        	printf("\n2 - Passagem GRATUITA [LIMITE EXCEDIDO]");
						}
                        printf("\n");
                        printf("\nDigite o Tipo de Passagem: ");
                        scanf("%d", &pas);
                        if(gratuidade1 >= 2){
                        	printf("\nLimite de gratuidades excedido.");
                        	break;
						}
                        switch(pas)
                        {
                            case 1:
                                inte1++;
                                printf("\n___________________________________________________________");
                                printf("\n|           Onibus 0 - VIAGENS S.A                        |");
                                printf("\n|Embarque: %s               | Desembarque: %s             |",vetor[0].origem,vetor[0].destino);
                                printf("\n|Data: %02d/%02d/%04d | Hora: %02d:%02d:%02d              |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: R$%s            Hora de Saida: %d                 |",vetor[0].valor,hora);
                                printf("\n|Tipo de Passagem: INTEIRA                                |");
                                printf("\n|Assento: %d                                              |", assent1);
                                printf("\n-----------------------------------------------------------");
                                printf("\n");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                break;
                            case 2:
                                grts1++; 
                                printf("\n___________________________________________________________");
                                printf("\n|           Onibus 0 - VIAGENS S.A                        |");
                                printf("\n|Embarque: %s          | Desembarque: %s                  |",vetor[0].origem,vetor[0].destino);
                                printf("\n|Data: %02d/%02d/%04d  | Hora: %02d:%02d:%02d             |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: GRATIS          Hora de Saida: %d                 |",hora);
                                printf("\n|Tipo de Passagem: GRATUIDADE IDOSO                       |");
                                printf("\n|Assento: %d                                               |", assent1);
                                printf("\n-----------------------------------------------------------");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                gratuidade1 ++;
                                break;
                        }
                        break;
                    case 1:
                        bus2++;
                        printf("\nOnibus 1 - %s para %s",vetor[1].origem,vetor[1].destino);
                        printf("\nValor: R$%s",vetor[1].valor);                  
                        printf("\nAssento: ");
                        scanf("%d", &assent2);
                        if (bus2>48) {
                        	printf("\nNao ha mais vagas para este onibus.");
                        	break;
                        }
                        while (assent2>48) {
                            printf("\nEste Onibus possui apenas 48 assentos, por favor, digite um assento valido\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent2);
                            system ("pause");
                        }
 
                        while (poltrona2[assent2] == 1) {
                            printf("\nEste assento ja esta ocupado\n");
                            printf("\nAssento: ");
                            scanf("%d", &assent2);
                            system ("pause");
                        }
 
                        poltrona2[assent2] = 1;
 
                        printf("\n");
                        printf("\n1 - Passagem Inteira");
                        if(gratuidade2 < 2){
                            printf("\n3 - Passagem GRATUITA");
                        }
                        else {
                        	printf("\n3 - Passagem GRATUITA [LIMITE EXCEDIDO]");
						}
                        printf("\n");
                        printf("\nDigite o Tipo de Passagem: ");
                        scanf("%d", &pas);
                        if(gratuidade2 >= 2){
                        	printf("\nLimite de gratuidades excedido.");
                        	break;
						}
                        switch(pas)
                        {
                            case 1:
                                inte2++;
                                printf("\n______________________________________________________________");
                                printf("\n|           Onibus 2 - VIAGENS S.A                           |");
                                printf("\n|Embarque: %s         | Desembarque: %s                      |",vetor[1].origem,vetor[1].destino);
                                printf("\n|Data: %02d/%02d/%04d | Hora: %02d:%02d:%02d                           |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: R$%s           Hora de Saida: %d                     |",vetor[1].valor, hora);
                                printf("\n|Tipo de Passagem: INTEIRA                                   |");
                                printf("\n|Assento: %d                                                  |", assent2);
                                printf("\n--------------------------------------------------------------");
                                printf("\n");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                break;
                            case 2:
                                grts2++; 
                                printf("\n______________________________________________________________");
                                printf("\n|           Onibus 2 - VIAGENS S.A                           |",vetor[0].origem,vetor[0].destino);
                                printf("\n|Embarque: %s      | Desembarque: %s                         |");
                                printf("\n|Data: %02d/%02d/%04d | Hora: %02d:%02d:%02d                           |", DataAtual->tm_mday, DataAtual->tm_mon+1, DataAtual->tm_year+1900, DataAtual->tm_hour, DataAtual->tm_min, DataAtual->tm_sec);                                
                                printf("\n|Valor: GRATIS         Hora de Saida: %d                     |",hora);
                                printf("\n|Tipo de Passagem: GRATUIDADE IDOSO                          |");
                                printf("\n|Assento: %d                                                  |", assent2);
                                printf("\n--------------------------------------------------------------");
                                printf("\nDigite 1 para imprimir passagem e voltar ao menu principal: ");
                                scanf("%d", &op);
                                gratuidade2 ++;
                                break;
                        }
                             
                } 
                printf("\n");
            break;
            default:
            	printf("Acao nao permitida");
       }
   }

   else 
   printf("Tente novamente.");
}
}
}
system("Pause");
}

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...