2017-01-11 7 views
0

Я должен вычислить количество комбинаций числа (назовем его C), используя N чисел. Я использую рекурсивную формулу. Однако есть ошибка:
"TypeError: неподдерживаемый тип операнда (ов) для + =: 'INT' и '' NoneType"
Мой код:Количество комбинаций с указанными номиналами

def amount(N, C, latest_nominal = 0): 
    if C < 0: 
     return print("C should be positive") 
    if C == 0: 
     return print("1") 
    if not N: 
     return print("There are no nominals") 
    possibilities = 0 
    for nominal in N: 
     if nominal >= latest_nominal: 
      possibilities += amount(N, C-nominal, nominal) 
    return possibilities 

Я был бы признателен за любую помощь! :)

ответ

4

print() функция возвращается None.

Итак, когда вы делаете return print("C should be positive"), вы возвращаетесь Нет. Следовательно, на линии possibilities += amount(N, C-nominal, nominal) ваш код поднимается Исключение

+0

Спасибо! Как я могу избежать этой проблемы? – Hendrra

 Смежные вопросы

  • Нет связанных вопросов^_^