#問題文がこちらです
Given 3 int values, a b c, return their sum. However, if any of the values is a teen -- in the range 13..19 inclusive -- then that value counts as 0, except 15 and 16 do not count as a teens. Write a separate helper "def fix_teen(n):"that takes in an int value and returns that value fixed for the teen rule. In this way, you avoid repeating the teen code 3 times (i.e. "decomposition"). Define the helper below and at the same indent level as the main no_teen_sum().
no_teen_sum(1, 2, 3) → 6
no_teen_sum(2, 13, 1) → 3
no_teen_sum(2, 1, 14) → 3
これに対して私が書いたコードが以下になります。
Python
1def no_teen_sum(a, b, c): 2 list=[a,b,c] 3 list2=[] 4 for x in list: 5 list2.append(fix_teen(x)) 6 7 return sum(list2) 8 9def fix_teen(n): 10 if n == 13 or n == 14: 11 return 0 12 if n >= 17 and n <= 19: 13 return 0
これを実行した結果以下のエラーが表示されました。
Python
1TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
数値とNonetypeを足していると書いてありますが、どこが間違っているのでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。