#include <stdio.h>
#include <stdlib.h>
///HE=horario de entrada, ME=minuto de entrada, HS= Hora de Saida, MS= minuto de saida,
///VP=Valor pago,TU=Tempo de Uso,Horas Subsequente,M=moto,MQ=Moto Quantidade,CP=Carro Pequeno,
///CG=Carro Grande,DM=Dia do Mes,CV= Codigo do Veiculo, VDP Valor que Deveria Pagar, DV= Diferença de Valor
///C=Cliente,
int main()
{
float VP, VDP, DV, TU, hs, M[10], CP[10], CG[10], MEDIA, MVP, MVPC, MVPM=0, TM, TCP, TCG, TD[30], TDM[30], TDCP[30], TDCG [30];
int HE, ME, HS, MS, DM=1, CV[10], TV, C, opcao=0, opcao1;
while(opcao=3){
printf("______________________________________________\n");
printf("1. Registrar movimento. \n");
printf("2. Gerar Relatorio. \n");
printf("3. Encerrar. \n");
printf("______________________________________________\n");
printf("Escolha uma opcao: ");
scanf("%d", &opcao);
if(opcao!=1 && opcao!=2 && opcao!=3){
printf("Opcao invalida Por favor coloque uma opcao valida.");
}
///Registro de movimento
if(opcao==1){
do{
printf("____________Registro de movimento_____________\n");
do{
printf("Dia %.0d mes\n", DM);
printf("Por Favor Coloque o Codigo do Veiculo: ");
scanf("%d", &CV);
printf("De 1 a 10 Qual o Numero do cliente deste veiculo: ");
scanf("%d", &C);
printf("______________________________________________________________________\n");
printf("Valores do estacionamento ha hora.\n");
printf("1. Moto: $4,00 a 1 hora e mais $2,50 por hora subsequente.\n");
printf("2. Carro Pequeno: $5,50 a 1 hora e mais $4,00 por hora subsequente.\n");
printf("3. Carro Grande: $7,50 a 1 hora e mais $5,50 por hora subsequente.\n");
printf("______________________________________________________________________\n");
printf("Por Favor Coloque o Tipo do veiculo\n 1. Para MOTO. \n 2. Prara CARRO PEQUENO. \n 3. Para CARRO GRANDE.\n ");
scanf("%d", &TV);
///Hora de entrada
do {
printf("Por Favor Coloque a Hora de Entrada do veiculo: ");
scanf("%d", &HE);
if(HE<0 || HE>23)
printf("Horario incorreto por favor informe um horario valido.\n");
}while(HE < 0 || HE > 23);
///Minuto de entrada
do {
printf("Por Favor Coloque os minutos de Entrada do veiculo: ");
scanf("%d", &ME);
if(ME<0 || ME>59)
printf("Minutos invalidos por favor coloque um horario valido.\n");
}while(ME < 0 || ME > 59);
///Hora de saida
do{
printf("Por Favor Coloque a Hora de Saida do veiculo: ");
scanf("%d", &HS);
if(HS<0)
printf("Horario invalido.\n");
if(HS < HE)
printf("Horario de saida e antes do horario de entrada.\n");
}while(HS < HE || HS > 23);
TU=HS-HE;
///Minuto de saida
do{
printf("Por Favor Coloque os minutos de Saida do veiculo: ");
scanf("%d", &MS);
if(MS<0 || MS>59)
printf("Minutos invalidos por favor coloque um horario valido.\n");
}while(MS<0 || MS>59);
if(MS > ME){
TU=TU+1;}
printf("Voce entrou %.0d:%.0d\n", HE, ME);
printf("Voce saiu %.0d:%.0d\n", HS, MS);
printf("Seu tempo de uso foi de %.0f Horas\n", TU);
printf("Por Favor coloque o Valor pago pelo cliente: ");
scanf("%f", &VP);
///Moto
if(TV==1){
VDP=((TU-1)*2.50+4.00);
DV=VP-VDP;
if(DV<0)
DV=(DV*-1);
if(VDP<VP){
printf("Valor Foi Cobrado %.2f a Mais\n", DV);
if(VDP>VP)
printf("Valor foi cobrado %.2f a Menos\n", DV);
}else{
printf("O Valor Foi Cobrado Corretamente\n");
}
M["%d", C]=VP;
}
///Carro pequeno
if(TV==2){
VDP=((TU-1)*4.00+5.50);
DV=VP-VDP;
if(DV<0)
DV=(DV*-1);
if(VDP<VP){
printf("Valor Foi Cobrado %.2f a Mais\n", DV);
if(VDP>VP)
printf("Valor foi cobrado %.2f a Menos\n", DV);
}else{
printf("O Valor Foi Cobrado Corretamente\n");
}
CP["%d", C]=VP;
}
///Carro Gramde
if(TV==3){
VDP=((TU-1)*5.50+7.50);
DV=VP-VDP;
if(DV<0)
DV=(DV*-1);
if(VDP<VP){
printf("Valor Foi Cobrado %.2f a Mais\n", DV);
if(VDP>VP)
printf("Valor foi cobrado %.2f a Menos\n", DV);
}else{
printf("O Valor Foi Cobrado Corretamente\n");
}
CG["%d", C]=VP;
}
TM=M[1]+M[2]+M[3]+M[4]+M[5]+M[6]+M[7]+M[8]+M[9]+M[10];
TCP=CP[1]+CP[2]+CP[3]+CP[4]+CP[5]+CP[6]+CP[7]+CP[8]+CP[9]+CP[10];
TCG=CG[1]+CG[2]+CG[3]+CG[4]+CG[5]+CG[6]+CG[7]+CG[8]+CG[9]+CG[10];
printf("%.0f", TM);
DM=DM+1;
TD[("%f", DM)]=TM+TCP+TCG;
printf("Finalizar o dia? \n");
scanf("%d", opcao1);
}while(opcao1!=1);
}while(DM>30);
}else
if(opcao==2){
printf("______________________________________________\n");
printf("Total arrecadado por tipo de veiculo.\n");
printf("Moto:%f \n", TM);
printf("Carro Pequeno:%f\n", TCP);
printf("Carro grande:%f\n", TCG);
printf("Media da diferenca no valor das cobrancas realizadas do Valor pago e o Valor Correto:\n");
printf("Medoa dp Valor pago e %f e Media do valor correto e %f", MVP, MVPC);
printf("Codigo do veiculo que pagou o menor valor entre os Carros Grandes: \n");
printf("Peucentual de Carros pequenos com valor cobrado abaixo do valor correto:\n");
printf("Quantidade de cobrancas feitas com valor pago maior que o valor correto:\n");
}else
if(opcao==3)
return 0;
}
}