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
The_assassin avatar The_assassin 158 Точки

Е, ти пък...
На мене, ако ми беше толкова оскъдно времето, със сигурност нямаше да се „мотая“ из форума. Аз понеже съм си решил задачите и не ми се решават допълнителни, а и така, или иначе тези функции вече доста съм ги използвал, тъй като „цъкам“ на Linux, та за това съм тука. А пък, ако бих могъл да бъда полезен с нещо на някого, още по-добре.

0
fumanbest avatar fumanbest 10 Точки

Много благодаря !


 

 
width = int(input())
length = int(input())
cakeSize = width * length
while cakeSize > 0:
piecesTaken = input()
if piecesTaken.upper() != 'STOP':
cakeSize -= int(piecesTaken)
else:
break
if cakeSize > 0:
print(f"{abs(cakeSize)} pieces are left.")
else:
print(f"No more cake left! You need {abs(cakeSize)} pieces more.")
































 

0
Bars1967 avatar Bars1967 9 Точки

Linux.

Че то няма друга OS, освен него, BSD и UNIX.

Някаква недомислица, наречена Win 10, пъпли в момента и къса нервите на колегите, които го ползват, останалите, дето са на Mint нямат оплаквания :)

 

 

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