Loading...
v.dimitrov13 avatar v.dimitrov13 21 Точки

Toy Shop

Здравейте,
Имам следния проблем:

excursion = float(input())
puzzles = int(input())
dolls = int(input())
bears = int(input())
minions = int(input())
trucks = int(input())

sum = puzzles * 2.60 + dolls * 3 + bears * 4.10 + minions * 8.20 + trucks * 2
numberToys =  puzzles + dolls + bears + minions + trucks

if numberToys >= 50:
    sum = sum - sum * 0.25

    rent = sum * 0.1
    sum = sum - rent

    if sum > excursion:
        diff = sum - excursion
        print(f'Yes! {diff:.2f} lv left.')
    else:
        diff = excursion - sum
        print(f"Not enougt money!{diff:.2f} lv needed.")

 

Минавам с debug през кода  и стигам до отпечатването на  print(f'Yes! {diff:.2f} lv left.').

Минавам с debug отново за да стигна до това  print(f"Not enougt money!{diff:.2f} lv needed.")  отпечатване -> но не се получава....
Второто отпечавтане се получава като if numberToys <= 50: като съм обърнал знака.

Моля за съдействие как да получа 2рото отпечатване без да променям знака

Тагове:
0
Programming Basics with Python 24/10/2018 09:05:54
The_assassin avatar The_assassin 158 Точки

До колкото разбирам, ти искаш да изпълниш двете условия едновременно, което според мене е невъзможно. Може да подадеш други данни, при които да се изпълни това условие, но в такъв случай ще отпадне предишното.

0
v.dimitrov13 avatar v.dimitrov13 21 Точки

Погледнах и урока на тази задача, изпълнението на задачата е едно и също. Там се получава а при мен не

- > Което е много странно.. 

0
24/10/2018 09:47:25
The_assassin avatar The_assassin 158 Точки

Кое видео имаш предвид (ако може и някакво ориентировъчно време да дадеш ;-)). Просто от любопитство искам да го видя, понеже аз на тази част с дебъгването не ѝ обърнах много внимание.

0
24/10/2018 10:29:58
v.dimitrov13 avatar v.dimitrov13 21 Точки

https://softuni.bg/trainings/resources/video/35427/video-20-october-2018-ines-ivanova-group-1-programming-basics-with-python-october-2018/2154
Това е линка на видеото.

0
vangel avatar vangel 51 Точки

Имаш няколко грешки.

Проверката дали сумата е го-голяма от бюджета за ваканция е погрешно индентирана с един тап и е в тялото на проверката дали броят на играчките е по-голям от 50.

При принтирането на съобщението, че парите не са достатъчни за почивка имаш малка правописна грешка в думата enough и трябва да се добави един интервал след удивителната :

print(f"Not enough money! {diff:.2f} lv needed.")

Също така имаш грешка в условията на двата ифа:

if numberToys >= 50, трябва да бъде

if numberToys > 49

 

if sum > excursion, трябва да бъде

if sum >= excursion

 

След корекциите резултатът е 100/100

excursion = float(input())
puzzles = int(input())
dolls = int(input())
bears = int(input())
minions = int(input())
trucks = int(input())

sum = puzzles * 2.60 + dolls * 3 + bears * 4.10 + minions * 8.20 + trucks * 2
numberToys =  puzzles + dolls + bears + minions + trucks

if numberToys > 49:
    sum = sum - sum * 0.25

rent = sum * 0.1
sum = sum - rent

if sum >= excursion:
    diff = sum - excursion
    print(f'Yes! {diff:.2f} lv left.')
else:
    diff = excursion - sum
    print(f"Not enough money! {diff:.2f} lv needed.")

0
DenitsaGenkova avatar DenitsaGenkova 13 Точки

Аз бих променила 2 неща:

1. Вторият if и цялата конструкция под него са сложени напред, като подусловие на първото условие.

2. sum >= excursion: - добавям и равно, освен по-малко

Трябва да е изцяло нов if и else като първия if, т.е. да започва от първа линия, от самото начало на листа плюс едно равно при втория if:

if numberToys >= 50:

       ......................

if sum >= excursion:

       ......................

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