Problemas com datas

1 resposta
T

pessoal fiz um projeto onde o cliente digita o dia a hora e minuto do inicio de uma produção e adiciona a essa data o tempo de produção.

por exemplo:
inicio da produção >>>>>>>>>>> 05/02/2010 10:30
tempo de produção do produto >>> 2:30
previsão de termino >>>>>>>>>> 05/02/2010 12:30

mas acontece que existe a hora do almoço que inicia 11:30, entao a previsão de termino seria 13:30

mas como faço isso?? como acrescentar essa hora apenas se o horario de termino for maior ou igual a 11:30
import java.util.Calendar;

public class Principal {
	public static void main(String[] args) {

		System.out.println("digite a media do produto por hora");
		double mediaHora = Util.getInputData();

		System.out.println("digite a qnt necessaria");
		double necessario = Util.getInputData();

		// formula para descobrir o tempo de produção
		

		double tempoH = necessario / mediaHora;
		double tempoDia = tempoH / 10;
		double hora1 = tempoH %  10 ;
		int hora =(int)hora1;
		int dia = (int)tempoDia;
		double tempoM = necessario % mediaHora / mediaHora * 60;
		int mim = (int) tempoM;

		// solicitando ao cliente a hora do inicio da produção

		Calendar cal = Calendar.getInstance();

		System.out.println("digite o dia do inicio");
		int diaInicioProducao = Util.getInputData();

		cal.set(Calendar.DAY_OF_MONTH, diaInicioProducao);

		System.out.println("digite a hora do inicio");
		int horaInicioProducao = Util.getInputData();

		cal.set(Calendar.HOUR_OF_DAY, horaInicioProducao);

		System.out.println("digite o minuto do inicio");
		int minInicoProducao = Util.getInputData();

		cal.set(Calendar.MINUTE, minInicoProducao);

		cal.add(Calendar.HOUR_OF_DAY, hora);
		cal.add(Calendar.MINUTE, mim);
		cal.add(Calendar.DAY_OF_MONTH, dia);
                System.out.println("previsão de termino da produção:" + cal.getTime());

alguem pode me ajudar ??

1 Resposta

M

Se a hora de almoço for fixa, você pode verificar se a horaInicial + tempoNecessário > inicioDeAlmoço. Se for, precisará tratar esse valor (somando 1 hora ao horário final).

Criado 4 de fevereiro de 2010
Ultima resposta 4 de fev. de 2010
Respostas 1
Participantes 2