codingbat question broken?

Dan Stromberg drsalists at gmail.com
Sun Jul 13 00:21:45 EDT 2014


This runs on 2.7 or 3.4, unmodified (other than the #!):

#!/usr/local/cpython-2.7/bin/python
#!/usr/local/cpython-3.4/bin/python

def lucky_sum(*list_):
    lucky_total = 0
    for element in list_:
        if element == 13:
            break
        lucky_total += element
    return lucky_total

if __name__ == '__main__':
    print('starting tests')
    assert lucky_sum(1, 2, 3) == 6
    assert lucky_sum(1, 2, 13) == 3
    assert lucky_sum(1, 13, 3) == 1
    print('ending tests')

On Sat, Jul 12, 2014 at 7:05 PM, Rodrick Brown <rodrick.brown at gmail.com>
wrote:

> I'm working on the following problem set from codingbat.com
>
> http://codingbat.com/prob/p107863
>
> Given 3 int values, a b c, return their sum. However, if one of the values
> is 13 then it does not count towards the sum and values to its right do not
> count. So for example, if b is 13, then both b and c do not count.
>
> lucky_sum(1, 2, 3) → 6
> lucky_sum(1, 2, 13) → 3
> lucky_sum(1, 13, 3) → 1
>
> The solution I came up with was -
>
> def lucky_sum(a, b, c):
>   t = 0
>   for ints in (a, b, c):
>     if a == 13:
>       t = b + c
>     elif b == 13:
>       t = a
>     elif c == 13:
>       t = a + b
>     else:
>       t = a + b + c
>   return t
>
> However the following tests fail
>
> lucky_sum(13, 2, 3) → 05X     lucky_sum(13, 2, 13) → 015X    lucky_sum(13,
> 13, 2) → 015X
>
> Can anyone show me an example where all test are success?
>
>
> --
> https://mail.python.org/mailman/listinfo/python-list
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20140712/a41f7150/attachment.html>


More information about the Python-list mailing list