import java.time.Duration;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
DateTimeFormatter formatoHorario = DateTimeFormatter.ofPattern("HH:mm");
System.out.println("Digite o horário de entrada (HH:mm): ");
LocalTime horarioEntrada = LocalTime.parse(scanner.nextLine(), formatoHorario);
System.out.println("Digite a carga horária diária (em horas): ");
int cargaDiaria = scanner.nextInt();
scanner.nextLine();
LocalTime horarioPrevisto = horarioEntrada.plusHours(cargaDiaria);
System.out.println("Digite o horário real de saída (HH:mm): ");
LocalTime horarioSaida = LocalTime.parse(scanner.nextLine(), formatoHorario);
Duration diferenca = Duration.between(horarioPrevisto, horarioSaida);
System.out.println("Horário de entrada: " + horarioEntrada.format(formatoHorario));
System.out.println("Horário de saída previsto: " + horarioPrevisto.format(formatoHorario));
System.out.println("Horário real de saída: " + horarioSaida.format(formatoHorario));
if (horarioSaida.isAfter(horarioPrevisto)) {
System.out.println("Saldo de horas: +" + diferenca.toHours() + "h " +
diferenca.toMinutesPart() + "min");
} else if (horarioSaida.isBefore(horarioPrevisto)) {
System.out.println("Saldo de horas: -" + Math.abs(diferenca.toHours()) + "h " +
Math.abs(diferenca.toMinutesPart()) + "min");
} else {
System.out.println("Saldo de horas: " + diferenca.toHours() + "h " +
diferenca.toMinutesPart() + "min");
}
scanner.close();
}
}