Java - Exam 18.03.17 Задача 3: Кола под наем / Car to go
Имам проблем с 3-та задача от изпита на 18.03. В Judge не минава един тест(не е от нулевите) и ми дава 87 точки. Аз не си виждам грешката, някой може ли да помогне?. Това ми е кода на решението:
import java.util.Scanner;
public class p03CarToGo {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
double budget = Double.parseDouble(scan.nextLine());
String season = scan.nextLine().toLowerCase();
if(budget < 10){
System.out.println("Invalid number");
}else if(budget <= 100){
System.out.println("Economy class");
if(season.equals("summer")){
System.out.printf("Cabrio - %.2f%n",budget * 0.35);
}else if(season.equals("winter")){
System.out.printf("Jeep - %.2f%n",budget * 0.65);
}
}else if(budget <= 500){
System.out.println("Compact class");
if(season.equals("summer")){
System.out.printf("Cabrio - %.2f%n",budget * 0.45);
}else if(season.equals("winter")){
System.out.printf("Jeep - %.2f%n",budget * 0.80);
}
}else if(budget > 500){
System.out.println("Luxury class");
System.out.printf("Jeep - %.2f%n",budget * 0.90);
}else if(budget >=10000){
System.out.println("Invalid number");
}
}
}

И аз се усъмних за граничните стойности, понеже нулевите тестове не са с тях.
А тези скоби [10.00 .... 10000.00], нали означават и включително числата?
Това което написах по-горе не е съвсем вярно, но задачата пак ще изкарва грешен отговор.
Ако числото е по-голямо или равно на 10 000, ти ще очакваш да получиш съответното, но това няма да се случи, защото програмата ще провери първо дали е по-голямо от 500 и ще спре да проверява надолу. Тоест за числата от 10 000 нагоре, ще връща грешни отговори.
Граничните стойности не ги коментирам, защото не съм чел условието :)
И при обединяване на двете условия за извън диапазона не се променят точките.
if(budget < 10 || budget > 10000){ System.out.println("Invalid number"); }Явно не е там проблема, или аз не интерпретирам правилно това: [10.00 .... 10000.00].
Това е условието: http://pastebin.com/BwSYqZ13
А това е решението за 87 точки: http://pastebin.com/aMTk8fp6