Skip to content

Latest commit

 

History

History
36 lines (21 loc) · 840 Bytes

21.rst

File metadata and controls

36 lines (21 loc) · 840 Bytes

练习 1.21

先将书本 33 页的 samllest-divisor 程序敲下来:

.. literalinclude:: code/p33-smallest-divisor.scm

.. literalinclude:: code/p33-find-divisor.scm

.. literalinclude:: code/p33-divides.scm

然后就可以开始找给定数的最小因子了:

1 ]=> (load "p33-smallest-divisor.scm")

;Loading "p33-smallest-divisor.scm"...
;  Loading "p33-divides.scm"... done
;  Loading "p33-find-divisor.scm"... done
;... done
;Value: smallest-divisor

1 ]=> (smallest-divisor 199)

;Value: 199

1 ]=> (smallest-divisor 1999)

;Value: 1999

1 ]=> (smallest-divisor 19999)

;Value: 7

可以看到, 1991999 的最小因子都是它们自身,说明它们都是素数,另一方面, 19999 的最小因子是 7 ,它不是素数。