Ir ao conteúdo

C Calcular tempo gasto no estacionamento - C


Ir à solução Resolvido por devair1010,

Posts recomendados

Postado
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <windows.h>
#include <time.h>

	int main (){
		setlocale(LC_ALL,"portuguese");
		
		float entrada,saida, taxa;
		printf("\nBem-vindo(a) ao UNEF Parking.\n\nPor favor, insira o cartão. \n\n"); Sleep(3000);
		printf("Só um momento, estamos fazendo a leitura dos dados.\n\n"); Sleep(3000);
		printf("\nDigite o horário de entrada: ");
			scanf("%f",&entrada);
		printf("\nAgora informe qual o horário atual: "); 
			scanf("%f",&saida);
			taxa = saida - entrada;
	    printf("\nTotal pelo serviço: \n", saida - entrada);

	
	if (saida-entrada<00,15)
	{
    	printf("\nVocê está isento!\n");
	}
	else
	{
    	printf("\nO serviço teve uma taxa de R$ 2,00\n");
	}
	return 0;
		
}

Galera, tô tentando fazer com que de início digite a hora de entrada, em seguida a hora de saída e por fim preciso que ele faça um cálculo (Hora de saída-Hora de entrada)e entregue no formato de horas  a fim de descobrir se a pessoa passou mais de 15 minutos no estacionamento.

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <windows.h>
#include <time.h>

    int main (){
        setlocale(LC_ALL,"portuguese");
        
        float entrada,saida, taxa;
        printf("\nBem-vindo(a) ao UNEF Parking.\n\nPor favor, insira o cartão. \n\n"); Sleep(3000);
        printf("Só um momento, estamos fazendo a leitura dos dados.\n\n"); Sleep(3000);
        printf("\nDigite o horário de entrada: ");
            scanf("%f",&entrada);
        printf("\nAgora informe qual o horário atual: "); 
            scanf("%f",&saida);
            taxa = saida - entrada;
        printf("\nTotal pelo serviço: \n", saida - entrada);

    
    if (saida-entrada<00,15)
    {
        printf("\nVocê está isento!\n");
    }
    else
    {
        printf("\nO serviço teve uma taxa de R$ 2,00\n");
    }
    return 0;
        
}

  • Solução
Postado

@Ícaro_Rocha       esse modo de pegar o horário se torna bem difícil , pois para calcular os minutos precisa dividir por sessenta ,  seria melhor pegar um de cada vez   Hora  Minuto  Segundo e fazer os cálculos ,  e além disso no seu código tem outro erro que é os números com casas decimais são separados por ponto final , do sistema inglês , e você colocou vírgula ,   e seu código poderia ser assim  :

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <locale.h>
#include <windows.h>
#include <time.h>
#include <math.h>
int main()
{
	setlocale(LC_ALL, "portuguese");
	char data[10],aux[3];
	char horario[10];
	float H_entrada, H_saida, taxa;
	float M_entrada, M_saida;
	int hora, minuto, segundo;
	float S_entrada, S_saida;
	float tempo;
	_strdate(data);
	_strtime(horario);
	aux[0]  = horario[0]; 
	aux[1]  = horario[1]; 
	aux[2]  = '\0';
	hora    = atoi(aux);

	aux[0]  = horario[3];
	aux[1]  = horario[4];
	aux[2]  = '\0';
	minuto  = atoi(aux);

	aux[0]  = horario[6];
	aux[1]  = horario[7];
	aux[2]  = '\0';
	segundo = atoi(aux);

	printf("Data  em   inglês %s\n", data);
	
	aux[0] = data[0];
	data[0] = data[3];
	data[3] = aux[0];

	aux[0] = data[1];
	data[1] = data[4];
	data[4] = aux[0];
	
	printf("Data em Portugues %s\n", data);
	printf("Horario -> %s\n", horario);
	printf("Hora ----> %d\n", hora);
	printf("Minuto --> %d\n", minuto);
	printf("Segundo -> %d\n", segundo);
	/*printf("\nBem-vindo(a) ao UNEF Parking.\n\nPor favor, insira o cartão. \n\n"); 
	Sleep(3000);
	printf("Só um momento, estamos fazendo a leitura dos dados.\n\n"); 
	Sleep(3000);*/
	printf("\n\nhora de entrada: ");
	scanf("%f", &H_entrada);
	printf("minuto de entrada: ");
	scanf("%f", &M_entrada);
	printf("Segundo de entrada: ");
	scanf("%f", &S_entrada);
	printf("hora  atual: ");
	scanf("%f", &H_saida);
	printf("Minuto  atual: ");
	scanf("%f", &M_saida);
	printf("Segund atual: ");
	scanf("%f", &S_saida);
	tempo  = H_saida - H_entrada;
	tempo += M_saida - M_entrada;
	tempo += S_saida - S_entrada;
	taxa   = H_saida - H_entrada;
	printf("\n\nTempo de estacionamento  %.2f", tempo);
	printf("\nTotal pelo servico :", H_saida - H_entrada);


	if (tempo/*saida - entrada*/ < 15)
	{
		printf("\nVoce esta isento!\n");
	}
	else
	{
		printf("\nO servico teve uma taxa de R$ 2,00\n");
	}
	return 0;

}

 

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!