Я написал этот фрагмент кода, который реализует двойной факториал в Python как итеративно, так и рекурсивно; код работает без проблем, но я заинтересован в улучшении моего общего стиля программирования. Вот код:Реализация для двойного факториала
def semif_r(n): #recursive implementation
if n == 0 or n == 1:
z = 1
else:
z= n * semif_r(n-2)
return z
def semif_i(n): #iterative implementation
N = 1
if n == 0 or n == 1:
return 1
elif n%2 == 1:
for i in range(0,n/2):
N = (2*i + 1)*N
VAL = N
return n*VAL
elif n%2 == 0:
for i in range(0,n/2):
N = (2*i+2)*N
VAL = N
return VAL
Я надеюсь, что некоторые опытные программисты могут дать мне несколько отзывов об улучшении моего кода!
http://codereview.stackexchange.com –
Этот вопрос может быть подходит для [Обзор кода] (http://codereview.stackexchange.com/help), если (а) ваш код работает по назначению, (b) ваш код является реальным кодом, а не примером кода и (c) ваш код включен в тело вопроса. Если вы хотите, чтобы экспертная оценка улучшала все аспекты вашего кода, отправьте ее на обзор кода. – Phrancis
Я голосую, чтобы закрыть этот вопрос как не по теме, потому что он принадлежит [codereview.se]. –