Escolar Documentos
Profissional Documentos
Cultura Documentos
h>
#include <stdlib.h>
#include<locale.h>
int registrarMovimento() {
int veiculo, dia, codigo, opcao, resto, hora, minuto, segundo,
hora_entrada_segundo, minuto_entrada_segundo, hora_saida_segundo,
minuto_saida_segundo, total_segundo_entrada, total_segundo_saida hora_entrada,
hora_saida, minuto_entrada, minuto_saida, segundo_entrada, segundo_saida,
tempo_transcorrido;
float valorveiculo, difvalor, valorpago, valorcorreto,
valorveiculo_primeirahora, valorveiculo_horanormal, valorveiculo_horatotal;
while(codigo>0){
printf("Digite o tipo de veiculo: MOTO(1), CARRO PEQUENO(2),
CARRO GRANDE(3): ");
scanf("%d", &veiculo);
if (segundo_entrada<0){
printf("Dado invalido!\n\n");
}else{
if(hora_entrada==0){
if ((minuto_entrada==0 &&
segundo_entrada>=0) || (minuto_entrada<=30 && segundo_entrada==0)){
valorcorreto = 0;
}else if (veiculo==1){
valorveiculo_primeirahora=4;
valorveiculo_horanormal=2.50;
}else if (veiculo==2){
valorveiculo_primeirahora=5.5;
valorveiculo_horanormal=4.0;
}else{
valorveiculo_primeirahora=7.5;
valorveiculo_horanormal=5.50;
}
}
}
}
}
}
hora_entrada = hora_entrada*3600;
minuto_entrada = minuto_entrada*60;
total_segundo_entrada =
hora_entrada+minuto_entrada+segundo_entrada;
hora_saida = hora_saida*3600;
minuto_saida = minuto_saida*60;
total_segundo_saida = hora_saida+minuto_saida+segundo_saida;
resto = tempo_transcorrido%3600;
hora = resto%3600;
minuto = resto/60;
segundo = resto%60;
valorcorreto = (float)valorveiculo*horaestacionado;
if (valorcorreto>valorpago){
difvalor = valorcorreto-valorpago;
printf("Valor cobrado a menos! Divida do cliente: R$ %.2f.\n\n",
difvalor);
}else{
if (valorcorreto<valorpago){
difvalor = valorpago-valorcorreto;
printf("Valor cobrado a mais! Credito do cliente: R$ %.2f.\
n\n", difvalor);
} else{
printf ("Valor pago corretamente!\n\n");
}
}
somaValorPago = somaValorPago + valorpago;
somaValorCorreto = somaValorCorreto + valorcorreto;
diferencaDosValores = somaValorPago - somaValorCorreto;
printf("\nResumo do dia %d:", dia+1);
printf("\nValor total arrecadado: %.2f.\n", somaValorPago);
printf("Valor total que deveria ser arrecadado: %.2f.\n",
somaValorCorreto);
printf("Diferença de valor total arrecadado e valor que deveria ser
arrecadado: %.2f.\n", diferencaDosValores);
somaValorPago=0;
}
valormes[dia] = valorpago;
return 0;
}
void gerarRelatorio() {
short dia=0;
printf("\n______________________________\n");
printf( " Relatório de valor mês \n" );
printf( "______________________________\n");
printf( "Dia valor \n");
printf( "______________________________\n");
while (dia <30) {
printf( " %2d %*.*f \n", dia+1, 18, 2, valormes[dia]);
total = total + valormes[dia];
dia++;
}
printf( "______________________________\n");
printf( "Total %*.*f \n", 18, 2, total);
printf( "______________________________\n\n");
total = 0;
return;
}
int main() {
setlocale(LC_ALL,"Portuguese_Brasil");
int resposta = 0;
do {
printf("1 - Registrar movimento\n2 - Gerar relatório\n3 - Encerrar\n");
scanf("%d", &resposta);
if(resposta == 1) {
registrarMovimento();
} else if(resposta == 2) {
gerarRelatorio();
} else if(resposta == 3) {
break;
} else {
printf("Número de 1 a 3");
}
} while (resposta != 0);
return 1;
}