def calculate_night_time(a, b): time = 0.0 # Check overlap with 18:00 to 24:00 overlap_start = max(a, 18) overlap_end = min(b, 24) if overlap_start < overlap_end: time += overlap_end - overlap_start # Check overlap with 00:00 to 06:00 overlap_start = max(a, 0) overlap_end = min(b, 6) if overlap_start < overlap_end: time += overlap_end - overlap_start return time T, S, D = map(int, input().split()) t = D / S full_days = t // 24 remaining_time = t % 24 S_current = T # Start time for the remaining period (mod 24 is handled implicitly) E = S_current + remaining_time remaining_night = 0.0 if E > 24: part1_start = S_current part1_end = 24 part2_start = 0 part2_end = E - 24 remaining_night += calculate_night_time(part1_start, part1_end) remaining_night += calculate_night_time(part2_start, part2_end) else: part1_start = S_current part1_end = E remaining_night += calculate_night_time(part1_start, part1_end) total_night = full_days * 12 + remaining_night # Ensure the output has sufficient precision print("{0:.15f}".format(total_night))