Софтуерно Инженерство
Loading...
+ Нов въпрос
KristinaDimi avatar KristinaDimi 0 Точки

Java Задача 9. Световен рекорд по плуване

Имам нужда от помощ с Задача: Световен рекорд по плуване(java).

Judge ми дава  само 80 от 100 точки.

 

Code:

https://pastebin.com/8LKk1iQw

 

Услове:

Иванчо решава да подобри Световния рекорд по плуване на дълги разстояния. На конзолата се въвежда рекордът в секунди,  който Иванчо трябва да подобри,  разстоянието в метри, което трябва да преплува и времето в секунди, за което плува разстояние от 1 м. Да се напише програма, която изчислява дали се е справил със задачата, като се има предвид, че: съпротивлението на водата го забавя на всеки 15 м. с 12.5 секунди. Да се изчисли времето в секунди, за което Иванчо ще преплува разстоянието и разликата спрямо Световния рекорд.

Когато се изчислява колко пъти Иванчо ще се забави в резултат на съпротивлението на водата резултатът трябва да се закръгли надолу до най-близкото цяло число.

Вход

От конзолата се четат 3 реда:

  1. Рекордът в секунди - реално число в интервала [0.00 … 100000.00]

  2. Разстоянието в метри - реално число в интервала [0.00 … 100000.00]

  3. Времето в секунди, за което плува разстояние от 1 м. - реално число в интервала [0.00 1000.00]

Изход

Отпечатването на конзолата зависи от резултата:

  • Ако Иванчо е подобрил Световния рекорд отпечатваме:

    • " Yes, he succeeded! The new world record is {времето на Иванчо} seconds."

  • Ако НЕ е подобрил рекорда отпечатваме:

    • "No, he failed! He was {недостигащите секунди} seconds slower."

Резултатът трябва да се форматира до втория знак след десетичната запетая.

 

 

 

Примерен вход и изход

Вход

Изход

Обяснения

10464

1500

20

No, he failed! He was 20786.00 seconds slower.

Иванчо трябва да преплува 1500 м.:  1500 * 20 = 30000 сек.

На всеки 15 м. към времето му се добавят 12.5 сек.:

(1500 / 15) * 12.5 = 1250 сек.

Общо време: 30000 + 1250 = 31250 сек.

10464 < 31250

Времето, което не му е стигнало за да подобри рекорда:

31250 – 10464 = 20786 сек.

Вход

Изход

Обяснения

55555.67

3017

5.03

Yes, he succeeded! The new world record is 17688.01 seconds.

Иванчо трябва да преплува 3017 м.: 3017 * 5.03 = 15175.51 сек.

На всеки 15 м. към времето му се добавят 12.5 сек.:

3017/ 15 = 201 * 12.5 = 2512.50 сек.

Общо време: 15175.51 + 2512.50 = 17688.01 сек.

Рекордът е подобрен: 55555.67 > 17688.01

Тагове:
JuganD avatar JuganD 16 Точки

Според мен липсва едно равно на if (RecordSek <= allTime). Не съм сигурен дали това е проблема, защото не намирам задачата в Judge, но има логика да е това :D

0
SophYO avatar SophYO 25 Точки

Здрасти!

Надявам се това решение https://pastebin.com/dY4mHMuT да ти помогне.

Хубав ден!

0