Софтуерно Инженерство
Loading...
+ Нов въпрос
Maria.19 avatar Maria.19 0 Точки

6.Vacation - while loop

1.   Почивка

Джеси е решила да събира пари за екскурзия и иска от вас да ѝ помогнете да разбере дали ще успее да събере необходимата сума. Тя спестява или харчи част от парите си всеки ден. Ако иска да похарчи повече от наличните си пари, то тя ще похарчи всичките и ще ѝ останат 0 лева.

Вход

От конзолата се четат:

·     Пари нужни за екскурзията - реално число в интервала [1.00…25000.00]

·     Налични пари - реално число в интервала [0.00...25000.00]

След това многократно се четат по два реда:

·     Вид действие - текст с възможности "spend" и "save".

·     Сумата, която ще спести/похарчи - реално число в интервала [0.01…25000.00]

Изход

Програмата трябва да приключи при следните случаи:

·       Ако 5 последователни дни Джеси само харчи, на конзолата да се изпише:

o   "You can't save the money."

o   "{Общ брой изминали дни}"

·       Ако Джеси събере парите за почивката на конзолата се изписва:

o   "You saved the money for {общ брой изминали дни} days."

import java.util.Scanner;

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

        double MoneyNeededforB = Double.parseDouble(scanner.nextLine());
        double MoneyGot = Double.parseDouble((scanner.nextLine()));
        int DaysSpending = 0;
        int Days = 0;

        while (MoneyNeededforB > MoneyGot) {
            String doing = scanner.nextLine();
            double MoneySpentor = Double.parseDouble(scanner.nextLine());
            if (doing.equals("spend")) {
                MoneyGot = MoneyGot - MoneySpentor;
                DaysSpending++;
            } else {
                MoneyGot = MoneyGot + MoneySpentor;
            }
            Days++;
        }
        if (DaysSpending >= 5) {
            System.out.println("You can't save the money.");
            System.out.println(DaysSpending);
        } else {
            System.out.println("You saved the money for " + Days + " days.");
        }

    }
}

 

Казва ми, че имам empty string, но не знам къде ми е грешката.

 

Тагове:
0
Programming Basics
Zlatinnn avatar Zlatinnn 1 Точки

https://pastebin.com/zMcPaPfX

Това е моето решение дебъгни го и лесно ще разбереш всичко.

0
RuNNeR4142 avatar RuNNeR4142 395 Точки

Здравей,

1. Не зануляваш парите ако изхарчи повече отколкото има.

2. Не зануляваш DaysSpending когато спестява за да имаш поредни дни на харчене а не общо.

3. Когато не успее да събере парите трябва да изпише общия брой на изминалите дни.

Удебелените думи в условието са по-важни и изискват повече внимание. Успех!

0