LINUX.ORG.RU

История изменений

Исправление vertexua, (текущая версия) :

Не тривиальный, а полностью общий. ПсевдокоТ факториала

f = 1
m = n
while (m != 1){
  f = f*m
  m = m-1
}
def cycle(f, m) = 
  if (m != 1)  cycle(f*m, m-1) 
  else f
cycle(1, n)

Абсолютно формально. Видишь куда переменные переплыли?

<dataset>: f=1, m=n
computation_complete: m==1
perform_computation:  f = f*m, m = m-1

Исправление vertexua, :

Не тривиальный, а полностью общий. ПсевдокоТ факториала

f = 1
m = n
while (m != 1){
  f = f*m
  m = m-1
}
def cycle(f, m) = 
  if (m != 1)  cycle(f*m, m-1) 
  else f
cycle(1, n)

Абсолютно формально. Видишь куда переменные переплыли?

<dataset>: f=1, m=n

computation_complete: m==1

perform_computation: f = f*m, m = m-1

Исправление vertexua, :

Не тривиальный, а полностью общий. ПсевдокоТ факториала

f = 1
m = n
while (m != 1){
  f = f*m
  m = m-1
}
def cycle(f, m) = 
  if (m != 1)  cycle(f*m, m-1) 
  else f
cycle(1, n)

Абсолютно формально. Видишь куда переменные переплыли?

<dataset>: f=1, m=n computation_complete: m==1 perform_computation: f = f*m, m = m-1

Исходная версия vertexua, :

Не тривиальный, а полностью общий. ПсевдокоТ факториала

f = 1
m = n
while (m != 1){
  f = f*m
  m = m-1
}
def cycle(f, m) = 
  if (m != 1)  cycle(f*m, m-1) 
  else f
cycle(1, n)

Абсолютно формально. Видишь куда переменные переплыли?