Я пытаюсь вычислить ?? по модулю fib (Фибоначчи по модулю m), используя эти две функции. Первый вход возвращает результат, тогда как второй ввод возвращает Нет . Я действительно не понимаю, что с этим не так:
def get_period(n,m):
# calculate period of m using fibonacci series
modular_list=[]
for idx,element in enumerate(fib_series(n)[0]):
modular_list.append(element%m)
for i in range(len(modular_list)-1):
if modular_list[i]==0 and modular_list[i+1]==1:
if i>1:
period = idx-1
modular_list_period = modular_list[:-2]
return(period, modular_list_period)
else:
continue
def fib_series(n):
lst = [0,1]
for i in range(n):
if n>=1:
lst.append(lst[-1]+lst[-2])
else:
return 0
return lst[:-1], lst[-2]
print(get_period(2015,3)) # returns -> (8, [0, 1, 1, 2, 0, 2, 2, 1])
print(get_period(239,1000)) # returns -> None