Loading...
Dimov79 avatar Dimov79 6 Точки

While ex. - 03. Vacation

Здравейте, 

относно задача трета от упражненията за While цикъл. При въвеждане на примерния код от задачата, получавам верен отговор, но при въвеждане в Judge не получавам пълен брой точки и няма примерен вход и изход, за да мога да преценя къде е грешката. 

https://pastebin.com/1jJ9vWRX

3. Почивка

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

Вход

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

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

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

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

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

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

Изход

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

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

  • "You can't save the money."

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

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

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

Тагове:
0
Programming Basics with Java
RuNNeR4142 avatar RuNNeR4142 396 Точки

countSpend++;        това се увеличава само когато харчи и
понеже броим дни подред които харчи трябва да се занулява когато спестява

 daysCount++;    това го уцели, браво!

 savings++;      тука при всяко завъртане добавяш едно левче към сумата за ваканцията?
Не знам как го измисли това, но няма логика, изтрий го.

Също така ако не успее да събере парите трябва да изпише броят на всичките дни.
Дните които харчи е ясно че са винаги 5.

0
dmartinov avatar dmartinov 37 Точки

Дните, които харчи няма да са винаги 5 защото може преди това да е спестявала например 3 дни, в които не е събрала парите, но след това 5 поредни да харчи, тогава общо изминалите дни ще станат 8. 5 е просто условие за поредност от действия, които да прекратят цикъла. Тоест, просто брояч чийто лимит е 5.

0
04/07/2019 15:14:53
RuNNeR4142 avatar RuNNeR4142 396 Точки

Да виждам че го разбираш на теория но защо не го отразяваш в кода ти? 

  • "You can't save the money."

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

    И ти пишеш:

  • System.out.printf("You can't save the money.\n" +
                        "%d", countSpend);

0
dmartinov avatar dmartinov 37 Точки

Чакай, чакай :) Аз само давам допълнителен акъл. Нямам пръст в кода даден горе :)

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