6. Трима братя - Programming Basics with Java
здравейте!
някой има ли идея защо не работи(маркираното поле, което не знам дали излиза маркирано, но говоря за: Math.abs(Math.ceil(timeLeft)))?
не би ли трябвало Math.ceil да закръгля към по–голямото?
изходът вместо
Cleaning time: 0.76
No, there isn't a surprise - shortage of time -> 1 hours.
е Cleaning time: 0.76 No, there isn't a surprise - shortage of time -> 0.0 hours.
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); double A = Double.parseDouble(scanner.nextLine()); double B = Double.parseDouble(scanner.nextLine()); double C = Double.parseDouble(scanner.nextLine()); double D = Double.parseDouble(scanner.nextLine()); double cleaningTime = 1 / (1/A + 1/B + 1/C); double restTime = cleaningTime * 0.15; double allTime = restTime + cleaningTime; double timeLeft = D - allTime; if (timeLeft > 0){ System.out.printf("Cleaning time: %.2f",allTime); System.out.printf("%n"); System.out.println("Yes, there is a surprise - time left -> " + Math.floor(timeLeft) + " hours."); }else { System.out.printf("Cleaning time: %.2f",allTime); System.out.printf("%n"); System.out.println("No, there isn't a surprise - shortage of time -> " + Math.abs(Math.ceil(timeLeft)) + " hours."); } } }
това е условието
Трима братя
Трима братя решили да изненадат баща си, като почистят заедно гаража му. Големият брат чисти сам за определени часове - А. Средният брат чисти сам за В часа. По-малкият брат чисти сам за С часа. Бащата отива да лови риба и няма да го има D часа.
Напишете програма, която пресмята дали тримата братя могат да изчистят заедно гаража и да изненадат баща си или не.
Към общото време за почистване се добавят 15% за почивка.
Вход
Входът се чете от конзолата и се състои от 4 реда:
Времето на първият брат за чистене сам - реално число в интервала [0.00 … 99.00]
Времето на вторият брат за чистене сам - реално число в интервала [0.00 … 99.00]
Времето на третият брат за чистене сам - реално число в интервала [0.00 …99.00]
Времето за риболов на бащата - реално число в интервала [0.00 … 99.00]
Изход
На конзолата трябва да се отпечатат два реда.
Времето за чистене и почивка, форматирано до втори знак: "Cleaning time: {Времето за чистене }"
Има ли изненада или не:
Ако братята СА изненадали бащата (time left > 0): "Yes, there is a surprise - time left -> {остатък} hours." - резултата трябва да е закръглен към по-малко цяло число (пр. 1.90 -> 1).
Ако братята НЕ СА изненадали бащата: "No, there isn't a surprise - shortage of time -> {недостиг} hours." - резултата трябва да е закръглен към по-голямо цяло число (пр. 1.10 -> 2).
а това е входът: (поне за частта, която ме притеснява)
3.2
2.5
1.24
0.5