Въпрос относно задача "Хотелска стая" от "Упражнение: По-сложни проверки" Java
Здравейте , ето това е условието на задачата :
Хотелска стая
Хотел предлага 2 вида стаи: студио и апартамент. Напишете програма, която изчислява цената за целия престой за студио и апартамент. Цените зависят от месеца на престоя:
|
Май и октомври |
Юни и септември |
Юли и август |
|
Студио – 50 лв./нощувка |
Студио – 75.20 лв./нощувка |
Студио – 76 лв./нощувка |
|
Апартамент – 65 лв./нощувка |
Апартамент – 68.70 лв./нощувка |
Апартамент – 77 лв./нощувка |
Предлагат се и следните отстъпки:
- За студио, при повече от 7 нощувки през май и октомври : 5% намаление.
- За студио, при повече от 14 нощувки през май и октомври : 30% намаление.
- За студио, при повече от 14 нощувки през юни и септември: 20% намаление.
- За апартамент, при повече от 14 нощувки, без значение от месеца : 10% намаление.
Вход
Входът се чете от конзолата и съдържа точно 2 реда, въведени от потребителя:
- На първия ред е месецът – May, June, July, August, September или October
- На втория ред е броят на нощувките – цяло число в интервала [0 ... 200]
Изход
Да се отпечатат на конзолата 2 реда:
- На първия ред: “Apartment: {цена за целият престой} lv.”
- На втория ред: “Studio: {цена за целият престой} lv.“
Цената за целия престой форматирана с точност до два знака след десетичната запетая.
Примерен вход и изход
|
Вход |
Изход |
Обяснения |
|
|
May 15 |
Apartment: 877.50 lv. Studio: 525.00 lv. |
През май, при повече от 14 нощувки, намаляваме цената на студиото с 30% (50 – 15 = 35), а на апартамента – с 10% (65 – 6.5 =58.5). Целият престой в апартамент – 877.50 лв. Целият престой в студио – 525.00 лв. |
|
|
Вход |
Изход |
Вход |
Изход |
|
June 14 |
Apartment: 961.80 lv. Studio: 1052.80 lv. |
August 20 |
Apartment: 1386.00 lv. Studio: 1520.00 lv. |
В judge ми дава само 90/100 и ми е интересно защо. Прегледах условието и кода няколко пъти да не би да съм пропуснал някоя точка ,запетая или нещо подобно но всичко ми изглежда наред. Някакви идеи ? Ето го кодът :
import java.util.Scanner;
public class HotelRoom {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String month = scan.nextLine();
int nights = Integer.parseInt(scan.nextLine());
double studio = 0;
double apartmet = 0;
if ("May".equals(month) || "October".equals(month)) {
studio = 50;
apartmet = 65;
} else if ("June".equals(month) || "Spetember".equals(month)) {
studio = 75.20;
apartmet = 68.70;
} else if ("July".equals(month) || "August".equals(month)) {
studio = 76;
apartmet = 77;
}
if (("May".equals(month) || "October".equals(month))) {
if (nights >7 && nights<=14) {
studio = studio * 0.95;
}else if ( nights >14){
studio = studio* 0.7;
}
}else if (("June".equals(month) || "September".equals(month)) && nights > 14) {
studio = studio * 0.8;
}
if (nights>14){
apartmet = apartmet*0.9;
}
double apartmentPrice = apartmet*nights;
double studioPrice = studio*nights;
System.out.printf("Apartment: %.2f lv. %n", apartmentPrice);
System.out.printf("Studio: %.2f lv.", studioPrice);
}
}