Loading...
AASargsyan avatar AASargsyan 1 Точки

Хотелска стая/ Hotel Room JAVA, някой ако може да помогне, че judge mi 50/100, малко ми е дълаг кода.

import java.util.Scanner;

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

        String month = scanner.nextLine();
        int countOnNigth = Integer.parseInt(scanner.nextLine());
        //•    На първия ред е месецът – May, June, July, August, September или October

        double priceApartament = 0;
        double priceStudio = 0;

        if (countOnNigth > 14 && month.equals("May") || month.equals("October")) {
            priceApartament = countOnNigth * 65.0;
            priceApartament = priceApartament - 0.10 * priceApartament;
            System.out.printf("Apartment: %.2f lv.", priceApartament);
            System.out.println();

        }else if (month.equals("May") || month.equals("October")){
            priceApartament = countOnNigth * 65.0;
            System.out.printf("Apartment: %.2f lv.", priceApartament);
        }
        if (countOnNigth > 7 && countOnNigth <= 14 && month.equals("May") || month.equals("October")) {

                    priceStudio = countOnNigth * 50;
                    priceStudio = priceStudio - 0.05 * priceStudio;
                    System.out.printf("Studio: %.2f lv.", priceStudio);

          }

            if (countOnNigth > 14 && month.equals("May") || month.equals("October")) {
                priceStudio = countOnNigth * 50;
                priceStudio = priceStudio - 0.30 * priceStudio;
                System.out.printf("Studio: %.2f lv.", priceStudio);

            }else if (month.equals("May") || month.equals("October")){
                priceStudio = countOnNigth * 50;
                System.out.printf("Studio: %.2f lv.", priceStudio);
            }


            if (countOnNigth > 14 && month.equals("June")|| month.equals("September")){
                priceApartament = countOnNigth * 68.70;
                priceApartament = priceApartament - 0.10 * priceApartament;
                System.out.printf("Apartment: %.2f lv.", priceApartament);
                System.out.println();

            }else if (month.equals("June")|| month.equals("September")){
                priceApartament = countOnNigth * 68.70;
                System.out.printf("Apartment: %.2f lv.", priceApartament);
                System.out.println();
            }

            if (countOnNigth > 14 && month.equals("June") || month.equals("September")){
                priceStudio = countOnNigth * 75.20;
                priceStudio = priceStudio - 0.20 * priceStudio;
                System.out.printf("Studio: %.2f lv.", priceStudio);
            }else if (month.equals("June") || month.equals("September")){
                priceStudio = countOnNigth * 75.20;
                System.out.printf("Studio: %.2f lv.", priceStudio);

            }if (countOnNigth > 14 && month.equals("July")|| month.equals("August")){
                priceApartament = countOnNigth * 77.0;
                priceApartament = priceApartament - 0.10 * priceApartament;
            System.out.printf("Apartment: %.2f lv.", priceApartament);
            System.out.println();
        }else if (month.equals("July")|| month.equals("August")){
                priceApartament = countOnNigth * 77.0;
            System.out.printf("Apartment: %.2f lv.", priceApartament);
            System.out.println();

        }
        if (month.equals("July")|| month.equals("August")){
            priceStudio = countOnNigth * 76.0;
            System.out.printf("Studio: %.2f lv.", priceStudio);

        }


        }
    }
Тагове:
0
Programming Basics
kle4ka avatar kle4ka 20 Точки
Best Answer

Малко ми се зави свят от кода ти, но го разконспирирах :D

Връщам ти кода с леки корекции https://pastebin.com/cZMqJss4 и вече дава 100/100 точки. Това, което направих като корекции е първо разделих отделните случаи в if проверките със скоби, за по-добра четимост и по-добро изпълнение от програмата, за да не се обърква кое с кое върви. След това съкратих малко проверките ти, защото се повтаряха едни и същи условия и преместих на едно място съдържанието под тях. Също така изнесох най-отдолу да се принтира, няма нужда да го пишеш навсякъде. Разгледай поправения код и ако нещо не ти е ясно попитай и ще се опитам да ти обясня ^^

П.П. Хубаво е и ти да качваш за напред кодовете в този сайт, за да е по-удобно, а и да не ти направи някой проблем, защото в правилника на форума пише, че като коментар е позволено да се качват само няколко реда код.Също качвай и условието на задачата за да е по-лесно да се ориентира някой, който не е от същия курс.

1
30/01/2019 23:54:48
dekploy avatar dekploy 0 Точки

Здравей и аз имам подобен проблем 50/100 ми дава judge https://pastebin.com/c4aNxEnT. Ще съм благодарен ако някой може да го погледне

 

0
JSuser avatar JSuser 215 Точки

Здравей, 

Ето кода ти поправен, дава 100/100. Имаше грешки в граничните стойности и в някои проверки. Принтирането е добре да е само накрая, а не във всеки If:

https://pastebin.com/7fjrqsFC

0
30/01/2020 15:07:46
dekploy avatar dekploy 0 Точки

Много благодаря

 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.