Введение в язык Scheme для школьников: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 111:
 
==== Вариант 1 ====
<codesource lang=scheme>(define (factorial n)
(if (= n 0)
1
(* n (factorial (- n 1)))))</codesource>
 
==== Вариант 2 ====
<codesource lang=scheme>(define (fact-iter result counter)
(if (= counter 0)
result
(fact-iter (* counter result)
(- counter 1))))
(define (factorial n) (fact-iter 1 n))</codesource>
 
==Повторение – мать учения==