Професионална програма
Loading...
+ Нов въпрос
Tarantula83 avatar Tarantula83 3 Точки

Задача Fishing Boat ?

Здравейте колеги!

Judge ми дава само 46/100 точки и не мога да разбера кое не наред.Моля някои да погледне кода и да каже къде е грешката!

Нулевите тестове минават но другите гърмят а аз не мога да видя защо.

Ето го и кода ми:

import java.util.Scanner;

public class FishingBoat {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int budget = Integer.parseInt(scanner.nextLine());
        String season = scanner.nextLine();
        int fishmans = Integer.parseInt(scanner.nextLine());

        double rent = 0;
        double sum = 0.0;

        switch (season){
            case "Spring":
                rent = 3000;
                break;
            case "Summer":
                rent = 4200;
                break;
            case "Autumn":
                rent = 4200;
                break;
            case "Winter":
                rent = 2600;
                break;
                default:
        }
        if (fishmans <= 6){
            sum = rent - (0.1 * rent);
        }else if (fishmans > 7 && fishmans <= 11){
            sum = rent - (0.15 * rent);
        }else if (fishmans > 12){
            sum = rent - (0.25 * rent);
        }
        if (fishmans % 2 == 0 &&  !(season.equals("Autumn"))){
            sum = rent - (0.95 * rent);

            }
            double result = sum - budget;
            if (budget > sum){
                System.out.printf("Yes! You have " + "%.2f" + " leva left.",result * -1);
        }else {
                System.out.printf("Not enough money! You need "  + "%.2f" + " leva.",result);
            }
    }
}

Благодаря предварително!

Тагове:
0
Programming Basics
svetoslav_0 avatar svetoslav_0 1005 Точки

Проблемът ти идва от допълнителната отстъпка (с 5-те процента). Трябва да сметнеш допълнителна отстъпка. В този смисъл трябва да извадиш 5% от вече получената стоност на променливата sum, без изобщо да намесваш rent. Тоест трябва да стане нещо такова:

sum = sum * 0.95;

Още нещо съвсем вкрая: когато бюджетът е равен на сумата, тогава също им стигат парите :D

budget >= sum

 

1
Tarantula83 avatar Tarantula83 3 Точки

Така е по добре но дава само 86/100 точки.Гърми на 2 теста някъде.

0
svetoslav_0 avatar svetoslav_0 1005 Точки

Кои? Първи и трети тест ? 

0
Tarantula83 avatar Tarantula83 3 Точки

Да тия двата се чупят незнам защо.

0