Loading...
sasobig12 avatar sasobig12 -4 Точки

В козолата рабоити но на judge е 50%. Уай?

Здравейте!

 

решавам задача от PB на Java. Уорък е Вложени условни конструкции. За мое съжаление тази задача не може да се провери в judge а момчето което е водило упражнението не я е решило на видеото а в папката на упражнението не са качени отговорите. 

В конзолата задачата ми работи с проверките на 100%. В Judge обаче нещо се чупи и той ( ДЖЪДЖА) ми дава само 50%. Халал да са му останалите 50%, обаче не това е проблема. Проблема е, че не знам какво се чупи. При някакво условие задачата не е вярна, но кое е това условие. На предният въпрос видях, че се избихте да ми помагате. Този път не бързайте и не се блъскайте. Все пак ако някой як програмист реши, че може да ми помогне ще съм му много задължен ( никога не знаеш кой ти става задължен в интернет).

Така. Линка към задачата е:

https://softuni.bg/trainings/resources/officedocument/35593/exercise-problem-descriptions-programming-basics-with-java-october-2018/2155

 

задача №5

Нов дом.

import java.util.Scanner;

public class Task5 {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        double rosesPrice = 5;
        double dahliasPrice = 3.8;
        double tulipsPrice = 2.8;
        double narcissusPrice = 3;
        double gladiolusPrice = 2.5;


        String flowers = scanner.nextLine();
        int flowersNumber = Integer.parseInt(scanner.nextLine());
        double budget = Double.parseDouble(scanner.nextLine());

        double price = 0;

        if (flowers.equalsIgnoreCase("Roses")) {
            if (flowersNumber > 80) {
                price = flowersNumber * rosesPrice - (flowersNumber * rosesPrice * 10 / 100);
            } else {
                price = flowersNumber * rosesPrice;
            }
        } else if (flowers.equalsIgnoreCase("Dahlias")) {
            if (flowersNumber > 90) {
                price = flowersNumber * dahliasPrice - (flowersNumber * dahliasPrice * 15 / 100);
            } else {
                price = flowersNumber * dahliasPrice;
            }
        } else if (flowers.equalsIgnoreCase("Tulips")) {
            if (flowersNumber > 80) {
                price = flowersNumber * tulipsPrice - (flowersNumber * tulipsPrice * 15 / 100);
            } else {
                price = flowersNumber * tulipsPrice;
            }
        } else if (flowers.equalsIgnoreCase("Narcissus")) {
            if (flowersNumber < 120) {
                price = flowersNumber * narcissusPrice + (flowersNumber * narcissusPrice * 15 / 100);
            } else {
                price = flowersNumber * narcissusPrice;
            }
        } else if (flowers.equalsIgnoreCase("Gladiolus")) {
            if (flowersNumber < 80) {
                price = flowersNumber * gladiolusPrice + (flowersNumber * gladiolusPrice * 20 / 100);
            } else {
                price = flowersNumber * gladiolusPrice;
            }
        }

        if (budget > price) {
            System.out.printf("Hey, you have a great garden with %d %s and %.2f leva left.", flowersNumber, flowers, (budget - price));
        }else{
            System.out.printf("Not enough money, you need %.2f leva more.", (price - budget));
        }
    }
}

 

Сега се уча и моля да ми простите ако решението е очевидно а аз нямам очи да го видя.

 

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

Поздрави,

Александър

Тагове:
0
Programming Basics
The_assassin avatar The_assassin 158 Точки

Опитай така:

if (budget > price) »» if (budget >= price)

0
e.manolov avatar e.manolov 80 Точки

Здравей, колега една малка грешчица виждам, от която може би ти коства и загубата на точки, а именно:

В условието, се казва, че ако бюджетът ти е достатъчен, т.е. 

if (budget >= price), а ти си написал if (budget > price) - изписваш 
System.out.printf("Hey, you have a great garden with %d %s and %.2f leva left.", flowersNumber, flowers, (budget - price));

 

При тебе когато budget = price казваш, че не са ти стигнали парите, а е точно обратното.

Мисля, че ме разбра.

Дано вземеш максимум точки с тази промяна.

Един съвет: когато ти минават всички тестове, и не ти минават 1-2, опитай се да хванеш ключовите моменти, при тези при които може да се сбърка, а именно тука е когато budget = price.

Успех.

0
09/11/2018 11:18:50
sasobig12 avatar sasobig12 -4 Точки

Да. Това беше грешката. Благодаря за помоща. Преписах задачата 3 пъти. Явно трябва да съм много внимателен с условията.

 

 

0
calebmyers avatar calebmyers 0 Точки

Благодаря ти много! Реших проблема с твоята помощsmiley 

google street view

0
coolkiu00 avatar coolkiu00 -1 Точки

I had the answer when I finished reading your article!

Please used cool maps when traveling offline!

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