Loading...
+ Нов въпрос
Bars1967 avatar Bars1967 9 Точки

Задача "Рожден ден"

Някакво решение?

Вече открих, че първият примерен отговор се различава от истинския резултат при така подадената на вход информация (проверих го и с калкулатора :)))
Любопитно ми е, дали и как някой е намерил начин от вход на една линия да се четат числа и думи...

0
Python
The_assassin avatar The_assassin 158 Точки

То по принцип си има функция за това, но на този етап, трябва да стане по следния начин:
Проверяваш дали входът е очакваният текст, и ако не е, го „парсваш“ към int(). Опитай, и ако не се справиш, ще ти дам решение!

Само за да няма объркване, това е задача № 6Торта“, от „While loop exercise“, нали?

0
Bars1967 avatar Bars1967 9 Точки

да, това е задачата

и да - аз стигнах до същия извод, после обаче правя някаква грешка, защото не ми изважда последното число

От вчера се опитвам и не успявам да се справя, ще опитам днес за последо :)

Отказвам се.

Прекалено малко пояснения, прекалено много "виртуални" примери - на първия "Примерен вход и изход" цикъла приключва още след 22 - не иска да продължи, не се сещам как да го направя.

Ей "грубия" код - има нещо, което не виждам явно:

w = int(input())
h = int(input())


area = w * h
guest = 0
par_count = 0
w_count = 0

while not area == guest:
    guest = input()

    if not guest == "STOP":
        guest = int(guest)
        if w_count == 0:
            par_count = area - guest
        if w_count != 0:
            par_count -= guest
            if par_count < guest:
                par_count = guest - par_count
                break
        w_count += 1

    elif guest == "STOP" or par_count <= area:

        break
0
09/11/2018 16:48:51
The_assassin avatar The_assassin 158 Точки

Честно казано, сега не ми се проверява, кое не е наред:

Това е моят вариант:

w = int(input())
l = int(input())
all_pcs = w * l

while all_pcs >= 0:
    tkn_pcs = input()
    if not tkn_pcs.upper() == 'STOP':
        all_pcs -= int(tkn_pcs)
    else:
        break

if all_pcs > 0:
    print('%d pieces are left.' % all_pcs)
else:
    print('No more cake left! You need %d pieces more.' % abs(all_pcs))

 

0
Bars1967 avatar Bars1967 9 Точки

Благодаря!
Снощи разбрах, че проблема ми идвал от "копи - пейст" - един невидим ентър, който ми прекъсвал цикъла.

Кода, който показах тук е измислица, в резултат на тази грешка.

Съжалявам за това, че губих и от твоето време, но .uper() вътре в if определено е нещо много полезно за мен :)

Още веднъж - Благодаря!

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