Olá pessoal, venho pedir ajuda em parte seguinte código.
Necessito incluir + 1 programação, no código já tem 2, irei adicionar a terceira:
//Programação 1
int horaInicio = 6; //informar aqui a hora inicial
int minutoInicio = 0; //informar aqui o minuto da hora inicial
int horaFim = 9; //informar aqui a hora final
int minutoFim = 30; //informar aqui o minuto da hora final
//Programação 2
int horaInicio1 = 9; //informar aqui a hora inicial
int minutoInicio1 = 45; //informar aqui o minuto da hora inicial
int horaFim1 = 10; //informar aqui a hora final
int minutoFim1 = 15; //informar aqui o minuto da hora final
Necessito incluir uma terceira, até já fiz:
//Programação 3
int horaInicio2 = 9; //informar aqui a hora inicial
int minutoInicio2 = 45; //informar aqui o minuto da hora inicial
int horaFim2 = 10; //informar aqui a hora final
int minutoFim2 = 15; //informar aqui o minuto da hora final
Porém tem outro campo que tem de ser incluso + não funciona a terceira programação e afeta a segunda...
Outro campo de alteração que devo estar errando:
boolean mesmoDia = ( (horaInicio*60+minutoInicio) < (horaFim*60+minutoFim) || (horaInicio*60+minutoInicio1) < (horaFim*60+minutoFim1)) ; //verifica se é no mesmo dia o inicio e o fim ou se começa em um dia e termina no outro
if ( ( ( mesmoDia ) && ( (horas*60+minutos) < (horaInicio*60+minutoInicio) || (horas*60+minutos) > (horaFim*60+minutoFim-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio1) || (horas*60+minutos) > (horaFim1*60+minutoFim1-1) ) ) //se for mesmo dia
||
( ( !mesmoDia ) && ( (horas*60+minutos) < (horaInicio*60+minutoInicio) && (horas*60+minutos) > (horaFim*60+minutoFim-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio1) && (horas*60+minutos) > (horaFim1*60+minutoFim1-1) ) ) //se termina no outro dia, aplica logica contraria
)
Coloquei dessa forma porém não funcionou conforme já descrevi...
boolean mesmoDia = ( (horaInicio*60+minutoInicio) < (horaFim*60+minutoFim) || (horaInicio*60+minutoInicio1) < (horaFim*60+minutoFim1) || (horaInicio*60+minutoInicio2) < (horaFim*60+minutoFim2)) ; //verifica se é no mesmo dia o inicio e o fim ou se começa em um dia e termina no outro
if ( ( ( mesmoDia ) && ( (horas*60+minutos) < (horaInicio*60+minutoInicio) || (horas*60+minutos) > (horaFim*60+minutoFim-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio1) || (horas*60+minutos) > (horaFim1*60+minutoFim1-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio2) || (horas*60+minutos) > (horaFim1*60+minutoFim2-1) ) ) //se for mesmo dia
||
( ( !mesmoDia ) && ( (horas*60+minutos) < (horaInicio*60+minutoInicio) && (horas*60+minutos) > (horaFim*60+minutoFim-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio1) && (horas*60+minutos) > (horaFim1*60+minutoFim1-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio2) && (horas*60+minutos) > (horaFim1*60+minutoFim2-1) ) ) //se termina no outro dia, aplica logica contraria
)
Se alguem puder me dizer onde estou errando e como efetuar ajuste.
Tags:
Não funciona...Funciona a somente a Programação 1 a Programação 2 iniciou porém parou antes tempo e a Programação 3 não funcionou
Segue código completo...
subistitua a parte que vc fez por essa e ve si da serto
se eu nao estive errado vai funciona
se funciona ai cometa depois
boolean mesmoDia = ( (horaInicio*60+minutoInicio) < (horaFim*60+minutoFim) || (horaInicio1*60+minutoInicio1) < (horaFim1*60+minutoFim1)) ; //verifica se é no mesmo dia o inicio e o fim ou se começa em um dia e termina no outro
if ( ( ( mesmoDia ) && ( (horas*60+minutos) < (horaInicio*60+minutoInicio) || (horas*60+minutos) > (horaFim*60+minutoFim-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio1) || (horas*60+minutos) > (horaFim1*60+minutoFim1-1) && (horas*60+minutos) < (horaInicio2*60+minutoInicio2) || (horas*60+minutos) > (horaFim2*60+minutoFim2-1 ) ) //se for mesmo dia
||
( ( !mesmoDia ) && ( (horas*60+minutos) < (horaInicio*60+minutoInicio) && (horas*60+minutos) > (horaFim*60+minutoFim-1) && (horas*60+minutos) < (horaInicio1*60+minutoInicio1) && (horas*60+minutos) > (horaFim1*60+minutoFim1-1)b&& (horas*60+minutos) < (horaInicio2*60+minutoInicio2) && (horas*60+minutos) > (horaFim2*60+minutoFim2-1) ) ) //se termina no outro dia, aplica logica contraria
Opa amigo, obrigado, após tua postagem consegui visualizar onde estava o erro, "horaInicio2" eu estava colocando "horaInicio1"...
Valeu, e obrigado.
eu ainda so iniciante mais estou aprendendo muito rapido e estou aqui pra tira as minha duvidas e a de quem eu pode ajuda blz
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por